gpt4 book ai didi

php - 在 WordPress 常规设置页面中排序输入字段

转载 作者:搜寻专家 更新时间:2023-10-31 21:36:07 26 4
gpt4 key购买 nike

我创建了一个插件,它在 WordPress 的“设置”>“常规”页面上添加了一个输入框“ Logo URL”。可以调用此输入并正常工作。我创建了另一个插件,它可以提取“ Logo URL”并应用该路径来为登录屏幕提取图像。一切都显得桃色。

我遇到的唯一问题是我想将“设置”>“常规”页面上的“ Logo URL”移动到“站点地址 (URL)”下。我不知道该怎么做。我已经在网上搜索过,但找不到有用的答案。

我目前正在删除原来的通用页面并添加一个新的通用页面,但不确定如何解析正确的 options-general.php。

如何在通用页面上将 Logo_URL 上移?

/**
* This is the code to create the Settings box on the Settings > General
*/
$new_general_setting = new new_general_setting();

class new_general_setting {
function new_general_setting( ) {
add_filter( 'admin_init' , array( &$this , 'register_fields' ) );
}
function register_fields() {
register_setting( 'general', 'URL_logo', 'esc_attr' );
add_settings_field('URL_logo', '<label for="URL_logo">'.__('Website logo (URL)' , 'URL_logo' ).'</label>' , array(&$this, 'fields_html') , 'general' );
}
function fields_html() {
$value = get_option( 'URL_logo', '' );
echo '<input type="text" id="URL_logo" name="URL_logo" value="' . $value . '" />';
}
}

最佳答案

不,没有办法本地订购。 WordPress 首先打印它的东西然后我们的。它必须用 jQuery 来完成。

add_action( 'admin_footer-options-general.php', function()
{
?>
<script type="text/javascript">
jQuery(document).ready( function($)
{
var son = $("label[for='URL_logo']").parent().parent(); // Our setting field
var father = $("label[for='home']").parent().parent(); // WordPress setting field
son.insertAfter(father);
});
</script>
<?php
});

推荐的方法是将 JS 排入 "admin_print_scripts-$hookname" 的操作调用中。请注意 admin_footeradmin_head 中使用的 Hook 名称。

由于您的字段仅在页面加载后发生变化,因此我们可以注意到“跳跃”。为了平滑它,我们可以使用:

add_action( 'admin_head-options-general.php', function()
{
echo '<style>#wpbody .wrap form{display:none}</style>';
});

并在 replaceWith() 之后添加这个 jQuery:

$('#wpbody .wrap form').fadeIn('slow');

关于php - 在 WordPress 常规设置页面中排序输入字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19168370/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com