web-dev-qa-db-ja.com

動的サイトマップをフッターに追加する

私はWordpressで種類のフッターメニュー/サイトマップを作成しようとしています。 (これはWordpress/PHPに関連するものすべてに対する私の最初の試みであることも言及に値する。

コンテキスト:

私たちは Jupiter という名前のテンプレートを利用しています。これは今度はWYSIWYGエディタのスタイルを使用してレイアウトを構築します。

ページのフッターに、この効果に何かを加えたいと思います。 (これは私たちの古いフッターでした)

enter image description here 

(私の)要件は、Wordpressのメニュー構造を使用して、マーケティング部門が必要に応じてフッターを変更できるようにすることです(例:メニューGUIエディタを使用)。

私はメニューを(フッターウィジェットにドラッグして)追加することに成功しましたが、新しく作成されたフッターをアコーディオンのように振る舞わせるものがあるようです。 (例:ulliは展開して折りたたみます)

最初のメニューノードにカーソルを合わせると、アコーディオン効果が発生します。

enter image description here 

質問:

  1. これがサイトマップを追加しようとする最善の方法なのか、それともメニューを使用しているのかが私が苦労している理由です。もしそうなら代替手段は? (ハードコーディングは起こらないでしょう)。
  2. これまでのところ私が考えているのは、崩壊を引き起こしているものを無効にしてそれをスタイルすることを試みるためにJavaScriptとCSSを追加する必要があるということです。このコードを追加するのに最も適した場所はどこでしょうか。

(これが管理ポータル経由で実行できるかどうかはまだ調査中なので、まだコードサンプルはありません)

1
Rohan Büchner

あなたのfooter.phpテンプレートの中でwp_nav_menu()を呼ぶべきです。

それは以下のように使われます:

 <?php wp_nav_menu( array('theme_location'=>'footer') ); ?>

Theme_locationパラメータは、メニューエディタ(テーマの場所)の下にあるチェックボックスを参照します。あなたのテーマが十分なtheme_locationを持っていない場合は、追加することによっていくつかを追加することができます

function register_html5_menu(){
     register_nav_menus(array( 
         'footer-1' => __('Footer Menu 1', 'theme_translation_domain'),
     ));
}

add_action('init', 'register_html5_menu');

functions.phpに

それ以外の場合は、menuパラメータを使用して、メニューを名前で直接呼び出すことができます。

<?php wp_nav_menu( array('menu'=>'menuname') ); ?>
1
Sladix