我正在用WordPress和jQuery mobile构建一个移动网站。
我想创建一个自定义小部件区域出现时,用户点击一个按钮。
我希望小部件区域中包含的链接看起来像JQM按钮。为此,我应该将属性data-role="button"添加到小部件中的'a'元素中。
是否有办法从functions.php中添加自定义属性到这些'a'元素?
默认情况下,这是小部件中的链接代码:
<h3 class="widget-title">Categories</h3>
<ul>
<li class="cat-item cat-item-646">
<a title="Some title" href="http://example.com/category/">Category</a>
</li>
...
我需要在'a'元素中添加一个data-role属性:
<a title="Some title" href="http://example.com/category/" data-role="button">Category</a>
我想知道WP API是否提供了一个过滤器来从functions.php中做到这一点,或者是否有可能以某种方式使用PHP
要过滤链接并添加data-role=button
,请使用以下代码。
$('li.cat-item').find('a').each(function () {
$(this).attr('data-role', 'button');
});
其中.cat-item
是一类列表项。
我终于找到了我的问题的答案:如何从functions.php中添加自定义数据属性到WP菜单项。
可以操作WordPress菜单的标记(而不仅仅是菜单)。WP提供了Walker类,可以在functions.php中扩展。
我没有在这里复制代码,但是谁对WP菜单构建感兴趣,可以从这里获取它:
http://www.kriesi.at/archives/improve-your-wordpress-navigation-menu-output来自WP stackexchange的其他有用资源如下:
https://wordpress.stackexchange.com/questions/14037/menu-items-description-custom-walker-for-wp-nav-menu/https://wordpress.stackexchange.com/questions/19245/any-docs-for-wp-nav-menus-items-wrap-argument/https://wordpress.stackexchange.com/questions/64515/fall-back-for-main-menu/