php - 向 WordPress 中的所有 url 添加一些参数

标签 php html css wordpress

如何向 WordPress 中所有页面的所有 url 添加一些参数?我正在进行主题开发,我需要向潜在客户展示使用它的不同变体。所以,我有不同的配色方案。我找到了一个关于如何从 url 获取参数并在我的代码中使用它们的教程。现在我很容易使用像 http://proceed.skible.com/?color=magic_night 这样的 url附加带有配色方案设置的 CSS 文件。它工作正常,但是当我单击演示页面上的任何链接时,它显然不会应用我的自定义配色方案,而是应用保存在设置中的方案。我想我可以这样做 - 添加 ?color=magic_night 或我需要的任何配色方案到所有链接。当然,我需要解析链接并以正确的方式添加它,而不仅仅是将它插入到每个 url 的末尾。不仅如此,是否有更好的方法来实现预览主题的其他功能的可能性?我看到了我在这里描述的方式:http://themes.mysitemyway.com/infocus/?themedemo=infocus&extracss=deep_blue .所有链接都以 extracss=deep_blue 或我从菜单中选择的其他主题结尾。 谢谢。

最佳答案

您应该使用 PHP cookie 来存储用户在 HTTP 请求之间的颜色偏好,但允许他们使用您正在讨论的 GET 变量覆盖它:

# Get the value of color if specified on the URL (GET) or in a cookie
# If non of those place have the color, then color will be NULL
$color = isset($_GET['color']) ? $_GET['color'] : (
    isset($_COOKIE['color']) ? $_COOKIE['color'] : NULL
);

# If we know what color we have and didn't just get it from a cookie
# then set a cookie with that color as its value
if ($color != NULL && isset(! $_GET['cookie'])) {
    setcookie('color', $color);
}

现在您有了 $color 值,您可以按照您想要的任何方式选择样式表,例如:

<?php
    if ($color != NULL) {
        ?> <link rel="stylesheet" href="<?php bloginfo('stylesheet_direcctory'); ?>/<?php print($color); ?>.css" type="text/css" /> <?php
    }
?>

附言我的 PHP 语法有点生疏,但概念应该都在那里

关于php - 向 WordPress 中的所有 url 添加一些参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4206075/

相关文章:

html - IE6 中带有翻转的透明 PNG 菜单项背景

html - 如何显示不规则重复但相同的图像,以便它们的边框在行之间对齐?

html - 从 Material 设计中的 .mdl-layout__drawer-button 中删除外边框线?

css - 滚动到屏幕外的最后一张 float 图像

php - 找到图像中最常见的颜色

PHP - 带分页的 MySQL 查询

php - 我可以在 Zend 中更改 application.ini 的位置吗?

PHP 脚本停止处理警告错误?

javascript - 快速移动光标时的jquery悬停问题

javascript - 在悬停/鼠标悬停时更改 div 内文本和 svg 的颜色