Questions tagged «hooks»

插件和主题扩展WordPress核心功能的方法。

5
主题激活钩
我想编写一个函数,以在激活主题后通过电子邮件将网站的URL发送给我。 激活主题时启动的挂钩是什么?

3
get_template_part与主题中的动作挂钩
在我看来,这两种方式都为最终用户提供了修改主题的机会,而无需实际编辑主题文件(通过子主题)。 我的问题是,一种方法优于另一种方法。 例如,以我现在正在研究的主题为例。我试图决定是否要使用钩子的模板部分。 <?php get_template_part('before_sitecontainer' ); ?> <div id="sitecontainer" class="sitecontainer" <?php //closed in footer ?>> <?php get_template_part( 'before_topcontainer' ); ?> <div id="topcontainer "> <?php get_template_part( 'before_topedge_navigation' ); ?> <?php get_template_part( 'topedge_navigation' ); ?> <?php get_template_part( 'before_site_header' ); ?> <?php get_template_part( 'site_header' ); ?> <?php get_template_part( 'before_second_navigation' ); ?> <?php get_template_part( …

6
如何仅在特定页面上包含代码?
我正在学习插件和简码。我注意到,当我激活插件时,其代码会加载到我的所有页面上,即使没有简码的页面也是如此。(我的意思不是内容与管理页面)。在某些内容页面上,我不使用特定的短代码,而在其他内容页面上,我不使用-但无论如何,都会加载插件的代码。如何使插件仅包含在使用简码的页面上? 更多详情: 假设我有一个制作灯箱的插件。我激活插件。在“酷图片”页面上,我使用简码制作了一个灯箱。当我在“关于”页面上选中不使用灯箱简码的查看源代码时,我看到灯箱插件的代码已加载。如果我编写插件,则页面加载速度会更快,以便其代码仅在需要的页面上加载。这可能吗?否则,我将不必要地在页面上加载大量插件的代码。有任何想法吗?

2
如何定制woocommerce相关产品?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为WordPress Development Stack Exchange 的主题。 5年前关闭。 我的网站中包含以下代码行,这些代码行将在WooCommerce的单个产品页面底部显示相关产品 ... functions.php: // display upsells and related products within dedicated div with different column and number of products remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_related_products',20); remove_action( 'woocommerce_after_single_product', 'woocommerce_output_related_products',10); add_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_related_products', 20); function woocommerce_output_related_products() { $output = null; ob_start(); woocommerce_related_products(4,4); $content = ob_get_clean(); if($content) { …
14 plugins  hooks  tags 


4
挂接到插件
我正在开发一个插件,该插件在用户通过其他插件执行某些操作时理想地能够执行操作。 我可以在这些插件中添加自定义钩子,但是显然,当我要分发我的插件时,这行不通。有没有办法从我自己的插件向其他人的插件添加挂钩?是要求作者包括自定义钩子,以便其他开发人员可以继续其工作的唯一真正解决方案吗? 示例:当某人转发某篇文章时,我想在插件中做些事情。如果在流行的转推插件中有一个自定义钩子,我可以将其钩住并解雇,那将很棒。没有,所以我可以修改他们的插件以包括它,但这仅适用于我的副本,并且我不想尝试重新分发它。 我们是否只需要尝试并成为更好的插件开发人员,以便我们都能一起玩得开心?
12 plugins  hooks 

4
标题标签和document_title_parts的问题
Wordpress version 4.5.1 我正在尝试动态更新特定模板上的页面标题。经过大量的挖掘和了解wp_title()更改之后,我尝试使用document_title_parts。但是,我根本无法运行过滤器。 我的主题是儿童functions.php: add_theme_support( 'title-tag' ); //add_filter("after_setup_theme", function(){ add_theme_support("title-tag"); }); add_filter( 'document_title_parts', function( $title ) { error_log('here'); return $title; }, 10, 1 ); 我已经尝试了两种添加主题支持的变体,如上所示,但是看着我的日志,页面重新加载没有任何显示。那error_log是与其他功能一起使用的(例如wp_title),因此错误日志记录正在工作。 我也尝试过pre_get_document_title,它确实会在页面加载时触发,尽管我无法获取它来实际更改标题。 所以!我使用的过滤器有误,未正确设置主题或其他我不知道的东西。任何帮助将不胜感激! 编辑以添加更多详细信息 尝试使用init函数,但也无法正常工作:https://gist.github.com/anonymous/6db5af892a4cf4fb029655167d7002a4 此外,虽然我已删除任何引用<title>从header.php,现场实际标题仍然显示在源。

3
在初始化过滤器或操作中获取$ post?
似乎$ post仅可用于在特定时间执行的钩子。我有一个“ init”钩子,需要使用$ post-> ID从数据库中提取一些数据。 到目前为止,我唯一的解决方法是在the_content上添加另一个过滤器,该过滤器使用$ post获取我需要的信息。不幸的是,它也将返回值回显到屏幕上,而无法将其实际返回给最初调用过滤器的函数。 这是提取所需数据的代码,但是回显并无法返回值: add_filter('the_content', 'get_keyword'); function get_keyword() { global $post; $keyword = get_post_meta( $post->ID, '_wpg_def_keyword', true ); return $keyword; } 有没有人对如何获得我所需的任何建议,并将其传递回调用函数以供以后在插件中使用? 编辑:为了更清楚一点,我在init上运行了一个筛选器,该筛选器需要能够从数据库中检索有关当前帖子的信息。为此,它需要访问$ post-> ID。但这在init中是不可能的,那么如何获得所需的结果? 谢谢, 乔纳森 解决了: 原来答案只是使用url_to_postid像这样: $keyword = get_post_meta( url_to_postid( "http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'] ), '_wpg_def_keyword', true ); 即使从init完美工作。
12 hooks 


1
更改“插件激活”消息默认值
每当WordPress中的管理员激活插件时,在重新加载插件页面时,成功激活后都会显示一条通知,报告“插件已激活”。 是否可以更改显示在管理通知中的文本,还是必须使用自己的自定义消息?另外,如果我必须使用自定义消息,这是否将取消默认的“插件激活”消息? 相关问题: 卸载,激活,停用插件:典型功能和操作方法 插件激活后如何显示自定义消息? gettext语法有什么意义? 重复: 感谢Pieter的发现: 如何在WordPress中删除默认的“已激活插件” 其他资源: gettext()函数 注意 请记住,尽管“ gettext”过滤器仅在translate()函数调用期间translate()应用,但实际上i18n.php中的所有其他i18n函数都使用该过滤器。这些包括本文“ Gettext语法 ”中此处列出的所有功能。
11 plugins  admin  hooks 


2
分层分类法UI
我不喜欢分类法在Wordpress管理员中的显示方式,并且想知道是否有人知道挂接和更改它的最佳方法。当前,如果我在帖子中选择了一些术语,则这些选择的术语将移至列表顶部,并且层次结构被破坏,使用户在视觉上感到困惑。 请查看这些图片以了解我在说什么 我想准确地显示分类法的最初显示方式,只勾选正确的术语。有没有一种方法而不必直接编辑Wordpress核心,我看不到任何挂钩供我使用。 感谢您提供的任何帮助! 海伦


5
创建帖子时,是否可以设置默认的自定义字段?
当我创建新帖子时,在单击“添加新内容”后,在帖子编辑器显示时,我不必使用下拉菜单并选择要使用的自定义字段,而是希望已有一些默认的自定义字段输入开口端。 在视觉上,代替: 我想要类似的东西: 我知道有一些插件(CPT,更多字段等),但是我想用一种简单的方法来完成基本功能。 我尝试过这样的事情(我正在使用自定义帖子类型'product'): function register_custom_fields( $post_ID ) { global $wpdb; if( !wp_is_post_revision( $post_ID ) ) { add_post_meta( $post_ID, 'reference', '', true); add_post_meta( $post_ID, 'price', '', true); } } add_action('edit_product', 'register_custom_fields'); 但这似乎不起作用。我认为该挂钩可能是错误的(因为edit_post在更新后出现),但是我看不到“新帖子”的任何挂钩(在用户单击wp admin中的“新帖子”之后)。有没有 ? 还是整个想法是错误的,还有另一种方法?

2
isset($ wp_filter ['all'])中的“全部”是什么
我是WordPress的新手。我试图了解它如何生成XHTML页面。我猜这是它的功能do_action( 'hook-name' ),但是isset( $wp_filter['all] )在阅读函数do_action时我仍然对指令的理解有些困惑,因为我不理解单词的含义all。 是PHP功能还是WordPress功能?
10 hooks 

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.