Questions tagged «filters»

一种挂钩,它提供一种以编程方式覆盖内容的方式

6
单个-{$ post_type}-{slug} .php用于自定义帖子类型
我最喜欢的Wordpress 模板层次结构部分是能够快速地为页面创建模板文件,而无需在Wordpress中编辑页面以选择模板。 我们目前可以这样做: 页面-{slug} .php 但我希望能够做到这一点: single- {post_type}-{slug} .php 这样,例如,在名为的帖子类型中review,我可以为位于以下位置的名为“我的伟大评论”的帖子制作模板single-review-my-great-review.php 有人设置过吗? single-{post_type}-{slug}.php

2
难以理解apply_filters()
在apply_filters()中 apply_filters( $tag, $value, $var ... ); 我在将头缠绕在$value和上时遇到麻烦$var。我阅读了抄本,听起来好像$value可以修改了$var,但是我还没有在野外找到任何示例。它似乎用作传递变量的方法。在那种情况下,那和$var?有什么区别?
19 filters  hooks  actions 

5
保存后如何编辑帖子数据?
我有一个插件,我希望能够通过一些过滤器来运行帖子内容,然后再将其保存到数据库中。通过查看插件api,我看到两个看起来像它们的钩子可能会有所帮助: save_post wp_insert_post 唯一的问题是,它看起来save_post不需要返回变量,因此我不知道如何过滤内容,并且wp_insert_post看起来已记录在案。 我想做这样的事情: add_action('whatever_hook_name','my_function'); function my_function($post_content){ return $post_content.' <br> This post was saved on '.time(); } 我将做一些比附加时间戳更有用的事情,即运行一些正则表达式过滤器,但这是我要添加的过滤器/操作的一般类型。 更新资料 请注意,我想截取保存在数据库中的数据,而不是在帖子中显示数据时截取(例如:不通过添加过滤器到the_content)

3
函数之前或之后的add_action(),add_filter()
浏览WordPress片段/教程/插件时,我经常看到add_action()和add_filter()放置在函数声明之前: add_action( 'publish_post', 'email_friends' ); function email_friends( $post_ID ) { $friends = 'bob@example.org, susie@example.org'; mail( $friends, "sally's blog updated" , 'I just put something on my blog: http://blog.example.com' ); return $post_ID; } 从逻辑的角度来看,这对我来说毫无意义。为什么在代码中调用了函数之后又放置它呢?通常,这就是我处理相同情况的方式: function email_friends( $post_ID ) { $friends = 'bob@example.org, susie@example.org'; mail( $friends, "sally's blog updated" , 'I just …

2
从wp_nav_menu动态排除菜单项
我尝试查找有关如何从自定义菜单中排除/删除导航菜单项的信息,而我发现的唯一线程没有任何对我有用的答案。 1.背景: 我在网站上使用WP自定义菜单(wp_nav_menu)和jqDock组合了一个Dock菜单。由于jqDock需要连续的图像或图像链接来发挥其魔力,因此我使用了自定义的Walker,因此导航菜单HTML输出看起来像这样: <div id="menu-first" class="nav"> <a><img src="http://path/to/image-1.png"/></a> <a><img src="http://path/to/image-2.png"/></a> <a><img src="http://path/to/image-3.png"/></a> etc... </div> 我的自定义沃克代码是: class custom_nav_walker extends Walker_Nav_Menu { var $tree_type = array( 'post_type', 'taxonomy', 'custom' ); var $db_fields = array( 'parent' => 'menu_item_parent', 'id' => 'db_id' ); function start_lvl(&$output, $depth) { $indent = str_repeat("\t", $depth); $output .= "\n$indent<ul …


8
从body_class中删除类
我不需要像这样的整个类的混乱... <body class="page page-id-829 page-template page-template-page-template-portfolio-php portfolio"> 我想要这样的东西... <body class="portfolio"> 某处是否有包含所有类列表的过滤器片段,然后我可以取消注释我不想在body类中看到的内容。 谢谢。
17 filters 

1
过滤器中的__return_false是什么
我正在考虑从我的wordpress(3.1.1)安装中删除/隐藏管理栏。 我访问了以下链接: http://codex.wordpress.org/Plugin_API/Filter_Reference/show_admin_bar 我很惊讶地看到只有一行可以删除/隐藏管理栏 add_filter( 'show_admin_bar', '__return_false' ); 我的问题是__return_false是什么意思?为什么__和_?

2
如何排除自动更新的插件?
有一个选择加入过滤器,该过滤器允许我网站上的所有插件都接收自动更新: add_filter( 'auto_update_plugin', '__return_true' ); 我喜欢此功能,但我不希望所有插件都自动更新。如何排除某些我想手动执行的插件,而又允许它们自动更新?

2
将自定义选项添加到wplink对话框
我设法为图像添加了一个自定义选项 function attachment_field_credit( $form_fields, $post ) { $field_value = get_post_meta( $post->ID, 'first_image', true ); $isSelected1 = $field_value == '1' ? 'selected ' : ''; $isSelected2 = $field_value != '1' ? 'selected ' : ''; $form_fields['first_image'] = array( 'label' => __( 'Use as first image' ), 'input' => 'html', 'html' => …

2
apply_filters函数及其变量的说明
我正在通过“简化表单注册”插件中的示例来学习如何使用PHP构建html表单。 我在看这段代码: $form .= apply_filters('simplr-reg-instructions', __('Please fill out this form to sign up for this site', 'simplr-reg')); 您能否解释一下发生了什么-函数的作用,为什么需要'simplr-reg-instructions'和'simplr-reg'? 为什么这行不能简单地是: $form .= 'Please fill out this form to sign up for this site' ; 我已经阅读了函数参考,但仍然无法弄清楚。
16 filters 

1
自定义帖子类型的行操作?
我正在开发一个插件,该插件可以将网站转换为反馈门户。我创建了一个新的对象页面“ Feedbacks”,该页面以表格形式显示所有反馈,并且我正在使用它register_column_headers($array_of_column_headers)来制作表格。我想知道是否可以在此表中添加我自己的页面行操作,我的意思是在列表中的每个反馈下都包含“批准”,“删除”,“黑名单”等操作。 我阅读了代码和几张票,然后发现这样做是这样的:帖子,post_row_actions注释comment_row_actions,评论,媒体media_row_actions。是否可以使用过滤器my-page-slug_row_actions?

1
保存分类法条款
我有一个有趣的问题,希望有人可以快速回答。 我已经创建了自己的元框,该框基于“我的METABOX代码”(下面的列表)正确显示了我创建的“ event_types”分类法中所有术语的下拉列表。 我遇到问题的地方是,从下拉列表中选择其他术语并更新帖子后,便能够保存/更新与该帖子相关的术语。 在修改了各种代码位之后,我能够弄清楚,通过手动将term_ID号(用逗号分隔)输入到数组区域中,可以得到想要的结果。 例如,如果保存帖子,则函数将调用此代码 wp_set_post_terms( $post_id, array(5,7), 'event_types', FALSE); 然后我的帖子将更新,并将term_ID 5和7与其关联,如您所见,我正在传递数组。问题是,这是硬编码到我的functions.php文件中的,而不是基于用户选择的下拉值的(注意:我实际上只是试图传递一个ID,但是我做了两个测试,如下所述)。 我还能够弄清楚,如果我将以下代码添加到我的metabox文件中,则可以回显已分配术语ID的列表,但最后一项带有逗号。 <?php $event_types = wp_get_object_terms($post->ID, 'event_types'); foreach ($event_types as $event_type) { echo $event_type->term_id . ','; } ?> 所以...看来我的问题已经解决了85%。我剩下的15%的问题仍然是: 我需要在我的functions.php文件代码中添加什么(在下面列出),以便在我创建/更新帖子时,将从分类法下拉列表中选择的新值传递到数组中? 尽管在此示例中,我希望确保仅将SINGLE分类法与帖子相关联,但是在其他情况下,我想创建一个复选框列表,该列表要求我将多个值传递给数组。这样,我需要更改什么,以便将以逗号分隔的术语ID列表传递到数组中?如果您的答案涉及使用上面列出的部分或部分示例代码,在这些代码中回显ID,那么如何确保最后打印的ID末尾没有逗号?(是否有其他/更好的方法?我看到了可能与添加过滤器有关的提示,但不确定如何做到这一点...) 提前非常感谢你们-以下是我当前在每个文件中使用的代码。 我的函数中的代码.PHP文件 function save_event_taxonomy_terms($meta, $post_id) { $event_types = wp_get_object_terms($post->ID, 'event_types'); wp_set_post_terms( $post_id, array($names), 'event_types', FALSE); } 我的METABOX代码 …

3
如何在WooCommerce Checkout模板中对计费字段重新排序?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为WordPress Development Stack Exchange 的主题。 6年前关闭。 我正在使用WooTheme的Customize checkout字段(使用action和filter)创建madlib样式的checkout表单。 结帐模板form-billing.php中的帐单字段与此呼叫一起显示: <?php foreach ($checkout->checkout_fields['billing'] as $key => $field) : ?> <?php woocommerce_form_field( $key, $field, $checkout->get_value( $key ) ); ?> <?php endforeach; ?> 如何更改字段显示的顺序? 当前(默认)字段的顺序是: 名字 姓氏 公司(隐藏对我来说) 镇/城市 邮政编码 国家 状态 电子邮件 电话 默认订单: 我希望这些字段对美国人(我居住的地方)而言更加自然,因此: 名字 姓氏 公司(为我隐藏) 城镇/城市 州 …
15 filters  plugins 

3
the_content和is_main_query
我正在使用过滤the_content器过滤内容。一切正常,摘录内容也包括我的更改也应用于自定义查询。如果小部件使用自定义查询,我的更改也会显示在边栏中 为了解决这个问题,我is_main_query()仅将主要查询作为目标,但它不起作用。更改仍然会一直应用于所有查询。什么是有趣的,虽然,所有其他条件检查像is_single()和is_category()工作,如果我针对特定的网页,除了所有更改会影响任何其他自定义查询页面上,我是否使用is_main_query()与否 我在这里想念什么吗?如何仅使用the_content过滤器将更改应用于主查询 add_filter('the_content', 'custom_content'); function custom_content($content){ if(is_main_query()){ // << THIS IS NOT WORKING // My custom content that I add to the_content() } return $content; }

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.