Questions tagged «customization»

修改主题和插件文件以创建新功能。

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 …

1
add_filter和apply_filters之间的区别
我已经寻找之间的差异的合适的解释add_filter(),并apply_filters()在这里,但没能找到。 任何人都可以告诉我在使用之前add_filter或apply_filters在一种情况下要考虑哪些信息或逻辑。 那使得必须使用一项而不是另一项? add_filter只是将一个功能添加到等待在变量上apply_filters执行的功能队列中并按顺序执行功能是否正确? 是不是也很正确,apply_filters当一个参数(要运行的函数的名称)呼吁将队列中的所有其他前执行该功能(如果存在的话)?

3
集成Wordpress和bbpress配置文件?
我已经在wordpress中安装了bbforum插件。但是,对于博客用户和论坛用户,它具有两个单独的配置文件。博客用户的个人资料网址: /作者/测试/ 虽然论坛用户拥有个人资料: /论坛/用户/测试/ 是否可以将两个配置文件都集成在一起而只创建一个配置文件?这样论坛中的用户也具有与博客个人资料相同的URL?谢谢


2
其他CSS文件存储在哪里
此图显示了Wordpress中的附加CSS功能。我正在尝试查找存储其他CSS的文件,但似乎找不到它-我搜索了wp-content中几乎每个文件夹! 有谁知道主题的附加CSS的存储方式,如果它在文件中,则该文件位于何处!


2
插件在哪种情况下负责数据验证/清理?
我想确保插件/主题中的所有数据在进入数据库之前以及输出到浏览器之前都得到安全处理。我的问题是,在某些情况下,API会为您处理清理操作(例如,保存帖子元字段时),而在某些情况下,插件/主题作者将全权负责清理操作(例如,保存自定义设置时)。 对于此问题的范围,我不关心在域级别验证数据-例如,检查表单上的Age字段是否在0到120之间,或电子邮件地址是否有效。我只关心安全性-例如,转义SQL查询以避免在保存到数据库时进行SQL注入,或者清除输出到HTML模板的数据以避免XSS。 为了进行输出清理,我知道在将变量回显到HTML模板中时,您总是需要使用esc_html()和之类的函数esc_attr()。但是,使用模板标签时呢?他们都已经清理输出了吗?如果是这样,则针对哪个上下文(常规HTML,标记属性等)?某些函数具有针对不同上下文的变体(例如the_title_attribute(),但大多数没有)。 为了进行输入清理,我知道$wpdb->prepare()在进行手动查询时需要使用,但是在使用Settings API创建插件设置页面或为自定义帖子类型保存帖子元字段时该怎么办? 现在,每当我使用一个函数来查找它是否可以清除时,我就一直在深入研究Core并阅读教程,但这很容易出错并且很耗时。我希望找到所有可能情况以及API是否处理的全面列表。例如, API验证/清除 使用 update_postmeta() 保存用户元 update_user_meta() 输出帖子标题-使用上下文相关的变体 the_title() 等等 您必须手动验证/消毒 使用Settings API保存插件选项。将回调作为的第3个参数传递register_setting()。 直接数据库查询:将查询包装在中$wpdb->prepare()。 以HTML输出变量。使用esc_attr(),esc_html()等 等等 我也很想了解为什么在某些情况下API提供了它,而在其他情况下却没有。我假设它与数据的未知性质有关,但希望听到一个详尽的解释。

5
从wp_nav_menu的输出中删除包装的div和ul
我正在使用新的Wordpress菜单系统,这是wp_nav_menu()的结果 <div class="menu-main-menu-container"> <ul id="menu-main-menu" class="menu"> <li id="menu-item-28" class="menu-item menu-item-type-post_type current-menu-item page_item page-item-21 current_page_item menu-item-28"><a href="http://www.bemang.com/">Trang nhà</a></li> <li id="menu-item-29" class="menu-item menu-item-type-post_type menu-item-29"><a href="http://www.bemang.com/blog/">Blog</a></li> <li id="menu-item-30" class="menu-item menu-item-type-post_type menu-item-30"><a href="http://www.bemang.com/gioi-thieu/">Giới thiệu</a></li> </ul> </div> 我想要的只是这个: <li id="menu-item-28" class="menu-item menu-item-type-post_type current-menu-item page_item page-item-21 current_page_item menu-item-28"><a href="http://www.bemang.com/">Trang nhà</a></li> <li id="menu-item-29" class="menu-item menu-item-type-post_type menu-item-29"><a href="http://www.bemang.com/blog/">Blog</a></li> …

2
创建以图像为中心的自定义帖子类型?
有没有人提供创建以图像为中心的自定义帖子类型的提示? 详细地说,我的博客具有旋转的标题图像,如下所示: 左上角的两个图像是随机的,并且作为特定页面的附件而存在,该页面仅包含这些图像。我想知道使用自定义帖子类型以其他方式存储这些内容是否可行。我创建了一个新的帖子类型“ header-image”,并且试图找出从这里开始的方向。我希望每个标题图像“ post”都具有一个图像附件。我不是从页面中提取随机图像,而是从标头图像帖子类型中提取随机帖子。鉴于这种, 如何将简单的界面集成到附件过程中,该界面可从“新标题图像”管理页面获得? 我可以删除帖子标题和内容输入框来整理页面吗? 目标是为当前的上传过程创建一个更好的界面,并最终能够创建一个分类法来将图像标记为左图/右图。(查看上面的图像,您可以看到右侧的照片掩盖了另一张照片中的脸部。我可以通过将照片标记为左侧和/或右侧显示来避免这种情况。)我可以实现前者。 更新:根据此处的答案,我能够实现此设置。完整代码如下。

1
如何使其子主题重新应用其父主题处于活动状态时自定义的设置?
情境 选择2015年主题。自定义各种设置,例如背景图片,标题图片,站点名称和标语。 但是,请勿触摸任何主题文件的内容。 使用Codex的“子主题”创建2015主题的最低子主题。 激活新的子主题。 哎呀 激活了这个最低限度的最小子主题的网站看起来与父主题完全不同。背景和标题图像消失了,并且激活了侧栏(或标题)小部件的所有方式,这些小部件在父级2015主题中不处于活动状态(默认情况下)。 网站的原始外观,其中包含针对2015年主题的一些自定义设置: 该网站看起来带有2015年主题派生的子主题,该主题仅包含必需的标头,style.css并且仅使Codex的“子主题”页面中建议的样式入队function.php。 题 我如何做到这一点,以便激活子主题保留父主题的自定义和默认设置? 在这种情况下:标题和背景图片以及默认(边栏/标题)窗口小部件的移除(停用)。 笔记 创建已经很繁重的自定义主题的子主题可能听起来像是重复的,但这与通过编辑主题文件进行自定义有关。 这个问题在激活儿童主题时,必须重置哪些核心设置。自定义菜单等?似乎在问我似乎在追求什么。不幸的是,唯一的答案推测出功能上的不匹配,对我而言不是这种情况,并且没有采纳OP的评论以达到相同的效果。 我也看着 激活子主题时,必须重置哪些核心设置。自定义菜单等?。它是相关的,但不能回答我的问题。 这: 在主题激活时注册主题定制器设置[重复]似乎也相关,但是不能满足我的需求。 也没有将它标记为重复的问题:Settings API在主题安装上启用默认设置吗?这是关于保存子主题的设置,而不是关于为子对象重复使用或重新应用父主题的设置。

1
将自定义帖子类型限制为仅网站管理员角色
如何从非管理员用户的仪表板中删除此自定义帖子类型? /* Add Websites Custom Post Type */ add_action( 'init', 'create_website_type' ); function create_website_type() { register_post_type( 'website', array( 'labels' => array( 'name' => __( 'Websites' ), 'singular_name' => __( 'Website' ), 'add_new' => __( 'Add New Website' ), 'add_new_item' => __( 'Add New Website' ), 'edit' => __( 'Edit Website' …

3
在循环外获取帖子作者ID
我需要将带有作者作者电子邮件(或其他用户元字段)的后编辑仪表板metabox放入。因此,当管理员查看此帖子时可以对其进行编辑。 $meta_id = get_the_author_meta( 'user_email', $user_id ); $meta_box = array( 'id' => 'my-meta-box', 'title' => 'DANE FIRMY', 'page' => 'post', 'context' => 'normal', 'priority' => 'high', 'fields' => array( array( 'name' => 'E-mail box', 'id' => 'mail', 'type' => 'text', 'std' => $meta_id ) ) ); 当$ user_id是一个整数时,此代码有效(当我手动将其放置在示例4时),但我想动态获取当前的作者ID($user_id)。 get_the_author_meta('user_mail')应该在不指定的情况下工作$user_id(codex说:)),但是代码在functions.php循环的内部和外部,因此不起作用。我从Wordpress和PHP开始,所以我不知道下一步该怎么做。 还尝试了这个: …

8
is_plugin_active函数不存在
我正在使用WordPress 3.0.5,并且已经过3.1rc4的测试。在插件的主PHP文件中,当我尝试调用is_plugin_active时,得到了Call to undefined function is_plugin_active()。我可以调用add_action和add_filter。我应该检查/更改以解决此问题? 这是在“插件”页面上的管理员内部进行的。我在主插件文件的顶部,if (function_exists('is_plugin_active')) {该文件始终返回false。 我也看不到其他插件的主插件文件中的功能(如果有帮助的话)。

1
Customizer控件中的多个输入
说我有一个自定义控件,但是此控件有2个需要保存的输入,例如: 货币类型和价值 尺寸和计量单位 名字和姓氏 文字和样式 图像和图像尺寸 字体家族和字体粗细 我该怎么办?我看到创建控件时有一个设置选项,但是没有文档说明如何使用它,而在野外完成它的唯一示例是Easy Google Fonts,它没有关于如何完成它的解释,以及很难读。是否可以嵌套控件和节? 到目前为止,我发现的所有教程和文档都讨论了具有单个html输入的控件,尽管API提出了建议,但都没有提及具有多个输入/设置的控件

3
以简码传递布尔值
在WordPress短代码中,如何传递布尔属性? 这两个[shortcode boolean_attribute="true"]或者[shortcode boolean_attribute=true]是给字符串值。 编辑 如果我使用@brasofilo评论的技巧,知道他们在做什么的用户将没有问题。但是,如果某些用户提供属性false值并获得true值,他们将会迷路。那么还有其他解决方案吗?

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.