- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我看过几篇关于此主题的博客文章,但未能成功实现。
我尝试了以下方法(也许其中之一是解决方案,但我有点偏离):
我有一个属性 CPT,它具有三个自定义分类法:
我想确保在创建特性帖子并设置其城市时仅选择一个城市(目的地)。我想使用下拉菜单来执行此操作。
按照上面的第一个(或第三个)链接示例,我尝试了以下实现:
在我的functions.php中初始化的函数:
// Creates dropdown taxonomy select for guest taxonomy in Properties.
function dropdown_tax_init(){
$categories = get_categories('taxonomy=city');
$select = "<select name='cat' id='cat' class='top-tags-dropdown'>n";
$select .= "<option value='-1'>Select Tag</option>n";
foreach ($categories as $category) {
if ($category->count > 0) {
$select .= "<option value='" . $category->slug . "'>" . $category->name . "</option>";
}
}
$select .= "</select>";
echo $select;
}
add_action( 'init', 'dropdown_tax_init' );
我还通过我的functions.php调用js,如下所示:
function admin_footer_script() {
wp_register_script('dropdown_tax_script', get_template_directory_uri() . '/js/taxonomy-dropdown.js', array('jquery'), '1.0.0'); // Conditional script(s)
wp_enqueue_script('dropdown_tax_script'); // Enqueue it!
}
add_action( 'admin_footer', 'admin_footer_script' );
最后,我的js如下:
var dropdown = document.getElementById("cat");
function onCatChange() {
if (dropdown.options[dropdown.selectedIndex].value != -1) {
location.href = "<?php echo home_url();?>/city/" + dropdown.options[dropdown.selectedIndex].value + "/";
}
}
dropdown.onchange = onCatChange;
我的 JavaScript 显示在管理页脚的检查中。
下拉列表在加载时闪烁,但当我的 function.php 中有该函数时,自定义分类法不会加载,某些东西破坏了古腾堡编辑器右侧栏中自定义分类法的加载。他们从不出现。
很高兴了解更多详细信息,谢谢。
最佳答案
不确定这是否是主要原因,但无论如何你不能像这样从 Javascript 中执行 PHP 代码:
location.href = "<?php echo home_url();?>/city/" + '...';
这会导致无效的 url 并导致重定向失败。如果您需要将一些值从 PHP 传输到 JS,请使用 wp_localize_script()
函数。查看详情here .
要调试其他潜在问题,您需要执行一些单独的测试:
$categories
数组不为空并且具有非空类别,或者只需检查 $select
输出(目前不执行任何相关的 JS)。<onCatChange()
的每次调用记录到控制台,以确保 onchange 事件:a) 正确触发,2) 不是由其他原因触发(例如,在旧版 IE 中失去焦点或其他棘手的意外情况)。然后记录分配给 location.href
的字符串值,并确保它没有损坏并且是有效的 url。其他提示:
$category->slug
、$category->name
- 它们并不总是可靠,有时可能会破坏您的标记);<\n
,而不仅仅是 n
?array('jquery')
的脚本,请随意使用 jQuery,而不是普通 JavaScript。这可以帮助您避免跨浏览器问题。希望这有帮助。
关于wordpress - 在自定义帖子类型内的自定义分类上用下拉选择器替换层次结构复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58033364/
我想对一个字符串执行搜索和替换,比如 password。 正如您从问题中了解到的那样,替换后的字符串应变为 sdvvzrug。 但不幸的是,下面的代码输出bbbbcaab: $search = ran
我正在使用 futurize --stage2它应用了许多源代码转换以使代码 python2 和 python3 兼容。其中一个修复是所有分区 a/b 都替换为 old_div(a/b),我想避免这种
我正在使用 RStudio,但我在控制台上的输出被截断了。我找不到如何停止截断(我尝试搜索 ?options 以及在谷歌上搜索的时间比我想承认的要长)。 编辑:我向大家道歉!我最初的长名称为“This
我有一个 fragment 堆栈,我在其中使用替换和相加。添加或替换我的 fragment 的代码(在我的 Activity 中)如下 private fun addFragment(fragment
我在一个数组中插入了一些字符串,但在我这样做之前,我想按照主题所说的去做。只用 %20 替换空格,我这样做: Name.push(linkText.replace(" ", "%20")); 但是我如
我正在尝试编译和测试我在网上看到的代码 Expanding an IP add 。但是,当我尝试编译它时,我收到有关 StringBuilder 替换方法的错误。它说: IPadd.java:52:
我正在尝试使用 dplyr 的最新功能重写我的部分代码,方法是将 data.frame() 替换为 data_frame() 和 cbind() 与 bind_cols(): library(rgeo
我最近偶然发现了 replace()和 "[ x.tst s.tst s.tst [,1] [,2] [,3] [1,] 0 0 0
我一直想知道,如何在给定的参数内进行替换。 如果你有这样的一行: 123,Hello,World,(I am, here), unknown 你想更换 World与 Foobar那么这是一个简单的任务
如何转义字符串中的双引号?例如, input: "Nobody" output: \"Nobody\" 我尝试过这样的操作,但不起作用: String name = "Nobody"; name.r
我正在做类似的事情: SQL sql sQl SqL var ps = document.getElementsByTagName('p'); for(var i = 0; i 但它不会替换文本。
我正在尝试用 \" 替换所有 " 并用 JSON 解析字符串,但浏览器抛出错误 SyntaxError: JSON Parse error: Unrecognized token '\'. 下面是代码
大家好,在这里挣扎...... 是否可以将第一个正斜杠之间的任何内容替换为“”,但保留其余部分? 例如var 将是 string "/anything-here-this-needs-to-be-re
在下面的代码中,JavaScript 替换函数中的 alert(a) 将提醒匹配的字符串,在本例中,将是 {name} 和 {place}。 这按照文档 javascript docs 的描述工作,即
+-----------------------------+ | tables | +-------------------
我正在尝试用\"替换包含 "的字符串,下面是我尝试过的程序 String s="\"/test /string\""; s = s.replaceAll("\"", "\\\"");
var text = "a's ..a's ...\"... "; text = convert(text); function convert( text ) { var n = text
我正在尝试使用 JavaScript 中的替换函数,但有一个问题。 strNewDdlVolCannRegion = strNewDdlVolCannRegion.replace(/_existing
好吧,首先我对我的上一篇文章感到非常抱歉,但我真的需要帮助,我会把我真正想要的东西放在一个更清晰的代码中。我不擅长 javascript,所以希望你能帮助我。
我正在写一张纸条,遇到了障碍。可能有更有效的方法来执行此操作,但我对 Python 还很陌生。我正在尝试创建用户生成的 IP 地址列表。我正在使用 print 来查看生成的值是否正确。当我运行此代码时
我是一名优秀的程序员,十分优秀!