WordPress

WordPress开发人员和管理员的问答

2
__()或_e()语言翻译字符串内的HTML
构建翻译字符串的正确方法是什么? 例如, echo __( 'Hello ' . $first . ' you owe me money.' ); echo __( '<div><p>Top: ' . $t_margin . '</p>' . '<p>Bottom: ' . $b_margin . '</p></div>' ) 是否可以添加字符串和/或HTML,还是应该先完成然后再进行翻译,例如: $html = '<div><p>Top: ' . $t_margin . '</p>' . '<p>Bottom: ' . $b_margin . '</p></div>'; echo __( $html …

3
我可以使用pre_get_posts函数通过元键排除帖子吗?
我看到许多人更喜欢使用pre_get_posts钩子代替query_posts。下面的代码可以正常工作,并显示所有具有“功能”元键的帖子 function show_featured_posts ( $query ) { if ( $query->is_main_query() ) { $query->set( 'meta_key', 'featured' ); $query->set( 'meta_value', 'yes' ); } } add_action( 'pre_get_posts', 'show_featured_posts' ); 但是我希望将具有' featured'meta_key 的帖子从主要查询中排除。有一个简单的方法吗?


2
在WP_Query中使用pre_get_posts
我读斯蒂芬·哈里斯的出色回答这个问题,关于使用WP_query(),query_posts()和pre_get_posts。 他说:“ pre_get_posts是一个过滤器,用于更改任何查询。它最常用于仅更改“主查询”。 可以仅pre_get_posts过滤使用?创建的特定辅助查询。例如。WP_Query $my_secondary_loop = new WP_Query(...); if( $my_secondary_loop->have_posts() ): while( $my_secondary_loop->have_posts() ): $my_secondary_loop->the_post(); //The secondary loop endwhile; endif; wp_reset_postdata(); 任何帮助,不胜感激。

5
为什么每行都有<?php和?>
我几乎到处都看到了这个约定,有时,它几乎使我发疯: &lt;?php //The loop ?&gt; &lt;?php while ( have_posts() ) : the_post(); ?&gt; &lt;?php the_content(); ?&gt; &lt;?php endwhile; // end of the loop. ?&gt; 即使没有中间的HTML代码,也要在每行上加上&lt;?php和?&gt;。 我的问题是:为什么? 为什么要包括所有这些额外的标签? 对我来说,这种约定似乎给代码增加了很多混乱,一开始很烦人,而且还增加了许多意外地遗漏了开始或结束标签的地方。 注意 这是从二十二主题(WordPress给出的示例)中提取的代码。


3
多站点插件的“全局”设置页面
我正在研究一个将安装在多站点实例中的插件。 如何创建仅在“网络管理员”级别可见的单个设置页面-我所看到的大多数指南都与标准博客级别的插件有关。信息的任何链接都将很有用,否则我将最终遍历站点范围的标签以了解其工作情况。 [更新] 像sitewide_tags用途的外观add_site_option,get_site_option和update_site_option,而这些功能使用wp_sitemeta。但是,据我所知,不支持register_setting,add_setting等,因此您必须手动获取和设置选项。

3
使用markdown创建帖子?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为WordPress Development Stack Exchange 的主题。 5年前关闭。 我可以用降价编辑器替换所见即所得的编辑器吗?如果是这样,我可以使用什么插件?

2
更新jQuery版本
我运行WordPress版本4.7.2。它使用jQuery 1.12版。我需要将此版本更新为更高版本。我以前用新版本替换过它,但是当我升级WordPress核心时,它又被1.12替换了。如何更改WordPress永久使用的jQuery版本?
24 jquery 

5
WP Rest API-如何获取特色图片
我对这个API还是很陌生,实际上到目前为止我只花了几个小时。我已经完成研究,但找不到任何东西... 问题是,我似乎无法获得帖子的精选图片。JSON返回"featured_media: 0"。 getPosts: function() { var burl = "http://www.example.com/wp-json/wp/v2/posts"; var dataDiv = document.getElementById('cards'); $.ajax({ url: burl, data: data, type: 'GET', async: false, processData: false, beforeSend: function (xhr) { if (xhr &amp;&amp; xhr.overrideMimeType) { xhr.overrideMimeType('application/json;charset=utf-8'); } }, dataType: 'json', success: function (data) { console.log(data); //question: data-&gt;featured_image: 0?! var theUl = …

3
如何获取要在模板中使用的日期格式和时间格式设置?
这是一个奇怪的问题,但我想知道如何访问日期和时间设置 Admin &gt; Settings &gt; General &gt; Date Format Admin &gt; Settings &gt; General &gt; Time Format 我正在使用Any + Time jQuery插件作为自定义帖子类型的编辑器视图的日期/时间选择器。它允许您使用与WordPress相同的设置来指定日期和时间格式。编辑:事实证明它没有使用与W​​ordPress相同的日期部分令牌。瘸。 http://www.ama3.com/anytime/#AnyTime.Converter.format 理想情况下,我想做这样的事情... &lt;?php $wpDateFormat = get_admin_settings('DateFormat'); // $wpDateFormat now holds something like "F j, Y" ?&gt; &lt;script&gt; $("#datetime").AnyTime_picker({ format: '&lt;?php echo $wpDateFormat ?&gt;' ); &lt;/script&gt; 我不知道的是...有这样的功能get_admin_settings()吗?

1
这种针对缓存和Cookie的解决方案会给我带来麻烦吗?
我已经提出了一个临时解决方案,该解决方案不是很常见,但与流行的WP缓存解决方案与cookie(在这种情况下为标准WP注释cookie)的交互作用相比,还没有出现前所未有的问题。我的解决方案还涉及在提供缓存文件方面很少定义的“已知用户”例外。无论它是否可用,我都认为对它进行解释并可能了解为什么它不是一个好主意通常具有指导意义。 我已经使用WP Super Cache,W3 Total Cache和Comet Cache测试了我的方法。在研究此问题时,我为自己详细介绍的一个就是WP Super Cache(以下简称“ WPSC”),因此我将其作为主要示例。 背景 如果将WP标准评论线程设置为允许访问者发表评论,则将为非注册用户并登录的任何评论者设置评论cookie,并使用实际的评论特权进行进一步检查。在我认为是最常见的配置中,评论者只需提供姓名和电子邮件地址。它们存储在两个浏览器Cookie中,通常是comment_author_ . COOKIEHASH和comment_author_email_ . COOKIEHASH。COOKIEHASH是根据用户选项定义的。 如果设置为将新生成的文件传递给“已知用户”,则WPSC会基于以下检查来确定是否提供缓存文件:登录的用户会获得新文件,访问者“可以发表评论”也是如此。后者主要由comment_author_cookie 在浏览器中的存在来标识,这些cookie不是由特定用户COOKIEHASH(通常但并非总是记录在站点选项中的“ siteurl”的MD5编码版本)为特定用户而唯一或唯一标识的。 来自wp-cache-phase1.php LL371-383的WPSC代码的关键部分似乎使用RegEx模式来获取字符串,并在cookie中循环: $regex = "/^wp-postpass|^comment_author_"; if ( defined( 'LOGGED_IN_COOKIE' ) ) $regex .= "|^" . preg_quote( constant( 'LOGGED_IN_COOKIE' ) ); else $regex .= "|^wordpress_logged_in_"; $regex .= "/"; while ($key = key($_COOKIE)) …

1
(Woocommerce)如何使用户属于订单?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为WordPress Development Stack Exchange 的主题。 5年前关闭。 我正在做一个在WooCommerce中完成订单后需要调用的函数。为此,我使用了*'woocommerce_order_status_completed'*挂钩。我想检查订单中是否有属于特定产品类别的产品。在这种情况下,用户将被添加到Wordpress中的组中。为了处理组逻辑,我使用了另一个插件的API。此方法需要* group_id *和* user_id *。我唯一缺少的是获取* user_id *。 如何从WooCommerce订单中获取用户(详细信息:id)? 码: function isa_set_isa_member_group_after_order_completed($order_id) { $order = new WC_Order( $order_id ); $items = $order-&gt;get_items(); foreach($items as $item) { $product = $order-&gt;get_product_from_item($item); $has_membership_product = has_term('Lidmaatschap','product_cat',$product-&gt;post); if($has_membership_product) { break; } } $group = Groups_Group::read_by_name('ISA Leden'); if(!group) { …


3
多个自定义帖子类型可以共享一个自定义分类法吗?
我正在考虑在wordpress中重建一个drupal站点,但仍在围绕系统之间的差异(尤其是cck /字段和自定义内容类型以及使用分类法的不同方法)进行研究。 我想知道两种自定义内容类型是否可以共享一种自定义分类法。在drupal中,我可以将特定内容类型的发布限制为一组用户,然后该发布可以具有仅与一个或多个其他内容类型(但并非所有类型)共享的分类法。 不用考虑角色定位器可能出现的用户方面,您可以用wordpress做到吗?我只见过具有自定义分类法的自定义内容类型,但是无法在两个或多个自定义内容类型之间共享给定的分类法,而无需在两个地方重新创建它或通过类别/标签全局启用它。 谢谢-乍得

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.