web-dev-qa-db-ja.com

Dynamic_sidebar()の内容を編集する方法

私はPHPをよく知っていますが、私はWordpressに慣れていません。私は不完全なWordpress Webサイトを手に入れました。それはAweberニュースレターフォームを持つ静的なホームページを持っています。インストールされているテーマとhome.phpを掘り下げてみました。

<div class="home-infobox">
<?php if ( is_active_sidebar( 'homepage-infobox' ) ) : ?>
    <?php dynamic_sidebar( 'homepage-infobox' ); ?>
<?php endif; ?>
</div>

私がホームページでソースを見ると、Aweberニュースレター購読フォームは<div class="home-infobox">内に正確に表示されます。最初のステップとしてフォームを変更する必要があります。また、コンテンツをどこから取得しているのかを把握しようとしました。それはデータベースからですか、それともPHPファイルからか、私はまったくわかりません。私がこれを理解するのを手伝ってください。

5
Zeeshan
  1. dynamic_sidebarの内容は、@ s_ha_dumが答えたように、wp-admin内のこの「サイドバー」または「ウィジェットエリア」に関連付けられているウィジェットから取得されます。サイドバー自体のテンプレートファイルはありません。 Appearance - > Widgetsの下にある/wp-admin/widgets.phpにアクセスして、homepage-infoboxというタイトルのウィジェット領域を見つけてください。ここでウィジェットを追加/削除したり、コンテンツを変更することができます。
  2. スラッグfunctions.phpを使用してプラグインとテーマファイルを検索し、register_sidebarhomepage-infoboxを検索します。 register_sidebarの宣言は何らかのプレゼンテーションコードを含むかもしれません。

また見なさい

2
here

関数名が示すように、 動的サイドバー を見ています。そのサイドバーを埋めるコンテンツは サイドバーウィジェットから来るべきです 、そのうちのいくつかはWordPressコアによって提供されますが、多く(ほとんど)はプラグインとテーマによって提供されます。ウィジェットは、データベースから、またはRSSフィードなどの外部ソースから生成される可能性があります。あるいは、静的データを表示するようにハードコードされている可能性があります。ウィジェットによって異なります。サイドバーの内側にある個々の要素のマークアップを見ると、通常どのプラグインがウィジェットを作成しているのかがわかります。 CSSのclassesとidsを確認してください。

1
s_ha_dum

データベースにない可能性があります。あなたがチェックしていないテーマベースの関数ファイルにある可能性が高いです。

あなたはテーマフォルダのfunctions.phpをチェックしたいでしょう。そのファイルまたはincludes/theme-init.phpファイルのどちらかに、動的サイドバーのコードが関連付けられている場合があります。

0
ckpepper02