XML SiteMapモジュールで各コンテンツタイプの周波数を設定するにはどうすればよいですか?

drupal.stackexchange https://drupal.stackexchange.com/questions/6084

  •  16-10-2019
  •  | 
  •  

質問

XML SiteMapモジュール(7.X-2.0-BETA3)を使用して、サイトのXMLサイトマップを生成します。問題は、コンテンツタイプの変更頻度を設定できないことです。

「admin/config/search/xmlsitemap/settings」では、「頻度の変更」コンボボックスがありますが、これはフロントページのみです。
他のコンテンツタイプと分類タグがあります。それらの頻度を変更するにはどうすればよいですか?

役に立ちましたか?

解決

私が見る限り、優先フォームフィールドは、 xmlsitemap_add_link_bundle_settings(), 、それによって呼ばれます xmlsitemap_node_form_node_type_form_alter().

開発スナップショットの最初の関数は、次のフォームフィールド定義を使用することです。

  $form['xmlsitemap']['status'] = array(
    '#type' => 'select',
    '#title' => t('Inclusion'),
    '#options' => xmlsitemap_get_status_options(),
    '#default_value' => $bundle_info['status'],
  );

  $form['xmlsitemap']['priority'] = array(
    '#type' => 'select',
    '#title' => t('Default priority'),
    '#options' => xmlsitemap_get_priority_options(),
    '#default_value' => $bundle_info['priority'],
    '#states' => array(
      'invisible' => array(
        'select[name="xmlsitemap[status]"]' => array('value' => '0'),
      ),
    ),
  );

「ステータス」フィールドが0に設定されている場合、優先度のフォームフィールドは見えません。

他のヒント

私はまた、「毎年」と「決して」とは思いがけずに登場しました <changefreq> 鬼ごっこ。これは別の設定です <priority> - これは別のXMLタグであり、優先順位のために選択したものに基づいて関連しているようには見えません。

コンテンツタイプごとにUIでこの設定を実際に制御できるようにしたより良いソリューションを見つけたらいいのにと思います。しかし、これは存在しないように見えるので、私は単に無効にしました changefreq 完全に:

  • /admin/config/search/xmlsitemap/settingsに移動
  • 高度な設定を展開します
  • 変化頻度のチェックを外します

おそらく、ほとんどの場合、Googleがインデックスを作成する頻度をGoogle自体に判断できるようにする方が良いでしょう。また、ChangeFreqタグの代わりにWebmasterツールを使用してそれを制御しようとするために、クロールをさらに制御する必要がある場合。

ライセンス: CC-BY-SA帰属
所属していません drupal.stackexchange
scroll top