Module: WpWrapper::Modules::Plugins::WordpressSeo

Included in:
WpWrapper::Modules::Plugins
Defined in:
lib/wp_wrapper/modules/plugins/wordpress_seo.rb

Instance Method Summary collapse

Instance Method Details

#configure_wordpress_seo(language = :sv) ⇒ Object



8
9
10
11
12
13
14
15
16
# File 'lib/wp_wrapper/modules/plugins/wordpress_seo.rb', line 8

def configure_wordpress_seo(language = :sv)
   unless logged_in?
  
  puts "[WpWrapper::Modules::Plugins::WordpressSeo] - #{Time.now}: Starting configuration of Wordpress SEO / Yoast SEO."
  
  enable_wordpress_seo_settings_page
  configure_wordpress_seo_titles(language)
  #configure_wordpress_seo_advanced_options
end

#configure_wordpress_seo_advanced_optionsObject

Deprecated?



49
50
51
52
53
# File 'lib/wp_wrapper/modules/plugins/wordpress_seo.rb', line 49

def configure_wordpress_seo_advanced_options
   unless logged_in?

  configure_wordpress_seo_permalinks
end

Deprecated?



56
57
58
59
60
61
62
63
64
65
66
67
# File 'lib/wp_wrapper/modules/plugins/wordpress_seo.rb', line 56

def configure_wordpress_seo_permalinks
  url       =   "#{get_url(:admin)}admin.php?page=wpseo_advanced&tab=permalinks"
  page      =   self.mechanize_client.get_page(url)
  form      =   self.mechanize_client.get_form(page, {:action => /wp-admin\/options\.php/i})

  options   =   {
    "wpseo_permalinks[redirectattachment]"                    =>  {:type   =>  :checkbox,   :checked    =>  true},
    "wpseo_permalinks[cleanreplytocom]"                       =>  {:type   =>  :checkbox,   :checked    =>  true}
  }
  
  response    =   submit_wordpress_seo_form(form, options)
end

#configure_wordpress_seo_sitemaps(not_included_post_types: [:attachment], not_included_taxonomies: [:category, :post_tag, :post_format], disable_author_sitemap: true) ⇒ Object

Deprecated?



70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
# File 'lib/wp_wrapper/modules/plugins/wordpress_seo.rb', line 70

def configure_wordpress_seo_sitemaps(not_included_post_types: [:attachment], not_included_taxonomies: [:category, :post_tag, :post_format], disable_author_sitemap: true)
   unless logged_in?
  
  url       =   "#{get_url(:admin)}admin.php?page=wpseo_xml"
  page      =   self.mechanize_client.get_page(url)
  form      =   self.mechanize_client.get_form(page, {:action => /wp-admin\/options\.php/i})
  
  options   =   {
    "wpseo_xml[enablexmlsitemap]"                             =>  {:type   =>  :checkbox,   :checked    =>  true}
  }
  
  if disable_author_sitemap
    options["wpseo_xml[disable_author_sitemap]"]              =   {:type   =>  :checkbox,   :checked    =>  true}
  end
  
  not_included_post_types.each do |post_type|
    post_type_options = {
      "wpseo_xml[post_types-#{post_type}-not_in_sitemap]"     =>  {:type   =>  :checkbox,   :checked    =>  true}
    }
  
    options.merge!(post_type_options)
  end
  
  not_included_taxonomies.each do |taxonomy|
    taxonomy_options = {
      "wpseo_xml[taxonomies-#{taxonomy}-not_in_sitemap]"      =>  {:type   =>  :checkbox,   :checked    =>  true}
    }
    
    options.merge!(taxonomy_options)
  end
  
  response    =   submit_wordpress_seo_form(form, options)
end

#configure_wordpress_seo_titles(language = :sv) ⇒ Object



32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/wp_wrapper/modules/plugins/wordpress_seo.rb', line 32

def configure_wordpress_seo_titles(language = :sv)
   unless logged_in?

  options   =   get_title_options(language)
  options.merge!(get_media_options)
  options.merge!(get_taxonomy_options)
  options.merge!(get_archive_options)
  options.merge!(get_other_options)

  url       =   "#{get_url(:admin)}admin.php?page=wpseo_titles"
  page      =   self.mechanize_client.get_page(url)
  form      =   self.mechanize_client.get_form(page, {action: /wp-admin\/options\.php/i})
  
  response  =   submit_wordpress_seo_form(form, options)
end

#enable_wordpress_seo_settings_pageObject



18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/wp_wrapper/modules/plugins/wordpress_seo.rb', line 18

def enable_wordpress_seo_settings_page
   unless logged_in?

  page      =   self.mechanize_client.get_page("#{get_url(:admin)}admin.php?page=wpseo_dashboard")
  form      =   self.mechanize_client.get_form(page, {action: /wp-admin\/options\.php/i})
  
  options   =   {
    "wpseo[enable_setting_pages]"      =>  {:type   =>  :checkbox,   :checked    =>  true},
    "wpseo[show_onboarding_notice]"    =>  {:type   =>  :checkbox,   :checked    =>  false}
  }
  
  response  =   submit_wordpress_seo_form(form, options)
end