Twitter Bootstrap이고 메뉴 링크 태그에 data-toggle = "modal"속성을 추가해야합니다. 대부분의 모든 결과 참조를 검색하면 Twitter Bootstrap 드롭 다운 메뉴 걷기를 수행하지만이 메뉴에는 드롭 다운이 없으며 특정 속성 만 추가하면됩니다.
다음 나는 이것을 발견했다 : 플러그인없이 메뉴 항목에 사용자 정의 속성을 추가하십시오 .WordPress 3.6 이상에서 볼 때 매우 유용합니다. 더 이상 복잡한 보행기를 할 필요가 없으며 대신 이것을 사용할 수 있습니다 : http://codex.wordpress.org/Plugin_API / Filter_Reference / nav_menu_link_attributes
그러나이 실행 시점에서 API 참조는 거의 없으며 예제를 제공하지 않으며 너무 새롭기 때문에 Google에 대한 참조는 거의 없습니다.
나는 이것을 먼저 시도했다.
add_filter( 'nav_menu_link_attributes', 'mywp_contact_menu_atts', 10, 3 );
function pb_contact_menu_atts( $atts, $item, $args )
{
// inspect $item, then …
$atts['data-toggle'] = 'modal';
return $atts;
}
그것은 예상대로 작동하지만 메뉴의 모든 a 태그에 속성을 추가합니다. 그래서 # menu-item-7857 a 등으로 하나의 메뉴 항목을 타겟팅하는 방법을 알아 내려고합니다.
메뉴 항목을 타겟팅하는 예를 어디에서 찾을 수 있는지 또는 위의 링크 된 API 참조에있는 정보를 기반으로하는 방법을 결정할 수있는 사람이 있습니까?
참고로 다음 예제를 찾았지만 도움이되지 않지만 올바른 방향에있을 수있는 자식이있는 항목 만 대상으로합니다.
add_filter('nav_menu_link_attributes', function($atts, $item, $args) {
if ( $args->has_children )
{
$atts['data-toggle'] = 'dropdown';
$atts['class'] = 'dropdown-toggle';
}
return $atts;
}, 10, 3);
업데이트-아래의 유일한 대답은 무언가에있는 것처럼 들리지만 실제로 특정 링크를 대상으로하는 숫자를 찾는 방법과 실제 예제에서 해당 조건을 추가하는 위치 / 방법을 결정할 수 없었습니다. 댓글을 추가했지만 듣지 못했습니다. 약 18 일 동안 현상금이 도움이 될지 알 것으로 생각했습니다.
링크의 코드를 볼 때 타겟팅하고 싶습니다.
<li id="menu-item-7858" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-7858"><a href="#" data-toggle="modal">Chat</a></li>
7858이라는 숫자가 표시되므로 타겟팅해야하는 숫자 일 수 있습니다.
그러나 예를 들어 시도하면 :
add_filter( 'nav_menu_link_attributes', 'my_chat_menu_atts', 10, 3 );
function my_chat_menu_atts( $atts, $item, $args ) {
if ( 7857 == $item['ID'] ) {
// inspect $item, then …
$atts['onclick'] = 'SnapEngage.startLink();';
return $atts;
}
}
그러나 한 의견 제시자가 제안한 if 문을 추가하면 다음 오류가 발생합니다.
Fatal error: Cannot use object of type WP_Post as array
더 많은 코드가 필요하지만 잃어버린 것으로 가정합니다. if 문이없는 알림은 작동하지만 타겟팅하려는 하나의 링크가 아닌 모든 링크를 대상으로합니다.