是否始终在URL中保留参数?

时间:2014-02-13 作者:arxoft

WordPress有没有办法在它生成的每个链接中始终保留一个自定义参数?这是我想做的。

我想通过输入?debug 作为URL参数;并显示一些特定信息,或者如果URL参数可用,则只进行一些调试编码。我知道我需要什么让WP使用自定义URL参数。我想知道如何使WP保持debug 它生成的所有LIK中的参数;在导航整个站点时,此参数会一直传播到我单击的所有链接,直到我将其删除为止。

1 个回复
最合适的回答,由SO网友:fuxia 整理而成

您不应该仅仅为了调试而更改要调试的输出,这是一个矛盾。:)

使用cookies来实现这一点。例如,在你的wp-config.php:

if ( ! empty ( $_GET[\'debug\'] ) )
{
    if ( \'on\' === $_GET[\'debug\'] )
        set_debug_mode( TRUE );
    elseif ( \'off\' === $_GET[\'debug\'] )
        set_debug_mode( FALSE );
}
elseif ( isset ( $_COOKIE[\'debug\'] ) )
{
    if ( \'on\' === $_COOKIE[\'debug\'] )
        set_debug_mode( TRUE );
    else
        set_debug_mode( FALSE );
}
else
{
    set_debug_mode( FALSE );
}

/**
 * Turn debug mode on or off.
 *
 * @param  bool $on
 * @return bool TRUE if cookie could be set.
 */
function set_debug_mode( $on = TRUE )
{
    if ( ! $on )
        return setcookie( \'debug\', \'on\', time() - 3600, \'/\' );

    define( \'WP_DEBUG\',         TRUE );
    define( \'WP_DEBUG_DISPLAY\', TRUE );
    define( \'SAVEQUERIES\',      TRUE );
    define( \'DIEONDBERROR\',     TRUE );
    define( \'SCRIPT_DEBUG\',     TRUE );

    return setcookie( \'debug\', \'on\', time() + 604800, \'/\' ); // one week;
}
现在添加?debug=on 所有以下请求都将使用调试模式。添加?debug=off 删除cookie并关闭调试模式。

结束

相关推荐

是否可以更改WP_DEBUG_LOG的日志文件位置?

我在开发环境中使用WP\\u DEBUG\\u LOG,没有调试问题。日志位于wp内容目录中。有时,当我需要调试某些内容时,我会在生产环境中打开WP\\u DEBUG,我仍然希望使用日志,但希望将其重定向到web根目录以外的内容。是否可以使用WP\\U DEBUG\\U日志?