WordPress

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

3
如何显示至少发表过1条帖子的用户列表?
我想做的是列出至少贡献了一个帖子的用户列表。 我需要显示以下内容: [用户照片] | [用户名] | [用户帖子数] 例如 [照片]乔·博格斯(8) 我做了一个开始,走了这条路: <?php $blogusers = get_users( 'orderby=post_count' ); foreach ( $blogusers as $user ) { echo '<li>' . esc_html( $user->display_name ) . '</li>'; } ?> 但是,这似乎只会使所有注册的用户返回博客,而不是返回已贡献用户,因此我当然不能正确地做到这一点。 我是wordpress和PHP的新手,因此将不胜感激。

2
在帖子的永久链接中使用类别库
目标 我想将我的永久链接格式如下: 用于帖子:somePrefix /%category%/%postname% 对于类别:somePrefix /%category% 凡somePrefix是在两种情况下是相同的。 我知道这没有太大的好处-对我来说,这似乎是“干净的” :)。如果要手动编辑URL,它会派上用场。 我尝试过的 没有类别库 一种方法是将帖子的永久链接定义为/%category%/%postname%/,并使用插件摆脱类别库。不幸的是,那些插件似乎有缺陷,不鼓励使用(例如,Yoast SEO插件)。 同一类别库 我想没问题,让我们这样使用永久链接中的类别库:category_base /%category%/%postname%。这将产生: 对于帖子:example.org/category_base/%category%/%postname% 用于类别:example.org/category_base/%category% 这适用于类别,但现在链接到帖子会产生404。 怎么办? 那么有没有办法做到这一点?设置,插件或什至一点点入侵WordPress以正确处理由Same Category Base创建的链接?

3
在插入媒体模式中为数据属性添加自定义输入
我正在尝试将文本输入添加到“插入媒体”模式,以希望能够向data-图像的父锚添加html5 属性。 <a class="fancybox" href="..." data-fancybox-group=" "> <-这部分 <img class="wp-image-871" src="..." alt="..." width="245" height="333" /> </a> 到目前为止,我已经能够将输入添加到模式中: 在我的functions.php文件中使用以下代码: function add_fancybox_input( $form_fields, $post ) { $form_fields['fancyboxGroup'] = array( 'label' => 'fancybox group', 'input' => 'text', 'value' => 'testing', 'helps' => 'use this to group images in fancybox', ); return $form_fields; } …

1
Wordpress Visual Editor剥离HTML更改
当我使用WordPress HTML编辑器添加icomoon图标时,如下所示: <span class="icon-shield"></span> 然后切换到视觉编辑器,然后再回到HTML编辑器,图标消失。我正在尝试包含此Javascript来解决此问题。我查看了wp_enqueue_scripts并将其放在functions.php中,但仍然无法解决问题。 function oakwood_tinymcefix() { wp_enqueue_script( 'tiny_mce' ); echo '<script type="text/javascript">' , 'tinymce.init({ ... extended_valid_elements : "img[class|src|border=0|alt|title|hspace|vspace|width|height|align|onmouseover|onmouseout|name]" });' , '</script>'; } add_action( 'admin_enqueue_scripts', 'oakwood_tinymcefix' ); 我怎样才能解决这个问题?

2
禁用仅URL自动完成功能,而不是整个规范的URL系统
我有一个博客,在某些类别的“项目”中有多个页面,其结构/名称如下: / projects / project-2012 / projects / project-2013 / projects / project-2014 / projects / project-2015 当用户输入诸如http://myblog.com/project甚至http://myblog.com/proje之类的URL时,他/她将被重定向到页面/ projects / project-2012。(永久移动301!) 虽然我希望wordpress将导致一个清晰定义的页面(例如,例如http://myblog.com/?p=123)的URL转换为规范形式,但是我只想禁用“自动” URL的URL自动完成功能可能指向几页。 我的问题是:我该怎么做? 我也做了一些研究... 禁用Wordpress URL自动完成问题的可接受答案将 禁用整个规范的URL系统。这对我来说是不可接受的。 大约四年前,类似的事情在Wordpress错误跟踪器中弹出:https : //core.trac.wordpress.org/ticket/8948虽然一些好的解决方案(例如提供页面“我们没有找到您的URL。但是您是也许正在寻找以下页面之一?”)在那里进行了讨论,最后关闭了门票。 编辑:实际上在https://core.trac.wordpress.org/ticket/16557上有一张新票,其中涵盖了我所需要的。它似乎是针对4.0发行版的。票证注释还包含解决方案(请参见下文)。
8 redirect  urls 

1
使用wp_nav_menu_items过滤器添加自定义菜单项
我添加了一个片段,以将“个人资料”链接添加到我的网站导航菜单。我的代码: add_filter( 'wp_nav_menu_items', 'my_nav_menu_profile_link'); function my_nav_menu_profile_link($menu) { if (!is_user_logged_in()){ return $menu; } else { $user_data = bbp_get_user_profile_url( get_current_user_id() ); $profilelink = '<li><a href="'.$user_data.'&edit" >Profile</a></li>'; $menu = $menu . $profilelink; return $menu; } } 此代码正确显示了我的菜单中的个人资料链接,但是现在我想将此“个人资料”链接移动为另一个主菜单的子菜单。 我的菜单结构如下: 设为首页 我的帐号| 分类目录 我想在“我的帐户”下添加“个人资料”链接。有解决这个问题的建议吗?

3
三明治编码标准
我最近发现了用于wp-lunch.php WordPress模板的文件的代码,如果遵循正确的WordPress编码标准,它将是什么样? <?php if ( current_user_can('has_sandwich') ): ?> <?php get_sandwich_header(); ?> <?php while( has_filling() ): the_filling(); ?> <?php get_sandwich_part( 'thick_layer', get_filling() ); ?> <?php endwhile; ?> <?php get_sandwich_footer(); ?> <?php endif; ?>

2
WordPress 3.9数据库更新无限循环
我最近将博客的Wordpress版本更新为3.9。运行更新后,我在尝试访问管理面板时收到此消息。 需要数据库更新 WordPress已更新!在发送给您之前,我们必须将您的数据库更新到最新版本。 更新过程可能需要一段时间,因此请耐心等待。 然后出现一个按钮“ Update Wordpress Database ”。当我单击按钮时,短暂的停顿后,我看到以下消息。 更新完成 您的WordPress数据库已成功更新! 大。除了每次我尝试访问管理面板时,我都会看到第一条消息,再次询问我是否更新数据库。 有人知道这种无限循环的出路吗?

1
在单个页面上显示具有多种帖子类型和相同关系的查询
我正在创建一个客户门户,我的客户可以维护他们的项目并在Wordpress中留下反馈。我有两种自定义的发布类型,分别称为“客户”和“项目”,它们各自在后端相互提取信息。当我创建客户端时,如果我可以将客户端分配给项目,它会自动在项目发布类型的下拉菜单中生成其postID。 我要完成的工作是通过在前端的单个页面上显示与所选客户端关联的所有项目。单个页面将是由客户帖子类型生成的客户门户。 我似乎无法显示相关的帖子。这是我的代码single.php,将在客户门户上显示项目。 <?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $loop = new WP_Query( array( 'post_type' => array( 'projects'), 'posts_per_page' => -1, 'paged' => $paged, 'meta_query' => array( array( 'key' => 'a_client', // name of custom field 'value' => '"' . get_the_ID() . '"', 'compare' => 'LIKE' ) ) …

2
WP 3.9 TinyMCE不再加载到类别描述编辑器上
自WP 3.5起,我就在functions.php中使用了以下脚本 它将标准类别描述编辑器转换为RTF编辑器。不幸的是,在将站点升级到WP 3.9之后,描述编辑器又回到了标准文本区域。 有什么想法需要更改3.9吗? add_action('load-categories.php', 'cb_admin_init'); add_action('load-edit-tags.php', 'cb_admin_init'); function cb_admin_init() { if ( user_can_richedit() && isset($_GET['action']) && 'edit' === $_GET['action'] && ( !empty($_GET['cat_ID']) || ( !empty($_GET['taxonomy']) && !empty($_GET['tag_ID']) ) ) ){ add_filter( 'tiny_mce_before_init', 'cb_mceinit'); add_action('admin_footer', 'wp_tiny_mce'); add_action('admin_head', 'cb_head'); } } function cb_mceinit($init) { $init['mode'] = 'exact'; $init['editor_selector'] = 'description'; …

2
通过meta_key过滤next_post_link()和previous_post_link()吗?
我有一个包含两个部分的页面,每个部分使用不同的WP_Query()in来拉入events,这是自定义帖子类型。每个WP_Query()查询都meta_key为事件日期查询a ,以便第1部分仅显示即将发生的事件,events而第2部分显示过去的消息events。 events第1节中即将显示的所有相关信息都在我的页面上,因此无法单击它们。 events第2节中的过去仅显示event标题,并且可以单击。用户单击过去时,event他们会链接到过去的自定义single-event.php模板event。 我想在single-event.php模板中显示上一个/下一个导航,但是导航应该只指向过去events。 我尝试使用next_post_link(),previous_post_link()但是这些也将链接到即将发布的内容events,这是我不希望的。我可能可以WP_Query()在其上设置一个新的single-event.php并循环遍历以获得上一个/下一个ID,但是重复查询似乎是一个艰巨的步骤。 对于events从我的上一个/下一个帖子链接中过滤掉即将到来的方法的一些见解,我将非常感谢。我已经看到了这个问题,但我不想使用插件。

1
如何通过双重身份验证保护页面:密码+电子邮件(在自定义字段中)
我想通过为用户电子邮件添加额外的输入字段来扩展帖子的WordPress密码保护。 因此,为了查看内容,用户将必须知道密码和先前给定的电子邮件,该电子邮件存储在受保护帖子的自定义元字段中。 我试图找到一个检查该额外字段的好方法,但是没有成功。您能给我一些如何做的想法吗?我不想为此功能创建用户帐户。

1
向已发布的WordPress插件添加功能的正确方法是什么?
因此,我四处寻找可以找到有关此问题的某种规则或至少一些通用礼节性指南,却一无所获。 本质上,我想知道当我发现一个WordPress插件(免费,在wordpress.org/plugins/中列出,并包含GNU GP许可证)时应该怎么做,我认为它可以通过在其中添加一定数量的功能而从中受益。 更改代码并包括新功能后,请执行以下操作: 1)提交给插件的当前作者,并希望他/她将其添加到插件中? 2)将“新”插件作为我自己的一个提交到WordPress插件列表中? 3)避免使用这些选项之一。只需更改插件,然后将其自己使用即可。 4)还有其他未在此处列出的内容吗?(暗示在建议部分中提出了建议。) 从许可的角度来看,我看不到任何禁止做出这些选择的禁令。我不知道获取代码,更改代码然后将其作为高级插件出售将有多道德,但是GP许可证似乎也不禁止这样做。 在这种情况下,最佳做法是什么?显然,我不想冒犯该插件的原始作者,或者不想让我在WordPress编码社区中看起来很糟糕。不过,在这种情况下,我认为该插件将从该新增功能中受益匪浅。 怎么说

4
在“概览”元框中显示自定义帖子类型
我发现以下代码片段将显示在仪表板的“概览”小部件中发布的自定义帖子类型的数量,如下所示: 有没有一种方法可以将“ 81 Wrestlers”文本变成指向帖子类型列表的链接。这是代码: add_filter( 'dashboard_glance_items', 'custom_glance_items', 10, 1 ); function custom_glance_items( $items = array() ) { $post_types = array( 'wrestler' ); foreach( $post_types as $type ) { if( ! post_type_exists( $type ) ) continue; $num_posts = wp_count_posts( $type ); if( $num_posts ) { $published = intval( $num_posts->publish ); $post_type …

4
更改主题后,自定义帖子类型会丢失吗?
我将要开始自定义WordPress主题的工作,我想知道我对自定义帖子的谨慎程度。假设我创建了一个WordPress主题,该主题注册了几种自定义帖子类型。据我了解,这是在激活主题时发生的。 如果我要创建这种自定义类型的多个帖子,然后更改为没有该自定义帖子类型的主题,我会完全丢失这些帖子吗? 如果我更改为DID具有相同自定义帖子类型的另一个主题(如果可能)怎么办,它们仍将存在? 此外,与自定义分类法相关的这些相同问题又如何处理?如果我更改为不支持自定义分类法的其他主题,则自定义帖子中的分类法数据将丢失(甚至保存)。定制分类法的数据是否仍然存在?

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.