首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在WordPress主题选项中使用单选按钮

在WordPress主题选项中使用单选按钮
EN

Stack Overflow用户
提问于 2011-02-20 04:01:38
回答 1查看 2K关注 0票数 1

我完全卡住了。

我一直致力于一个主题,提供5种不同的布局和3种不同的皮肤。在主题选项中,我最初使用复选框来选择皮肤和布局,但( ThemeForest)要求我将它们更改为单选按钮。一开始,我想,没问题。现在我一无所知了。

在标题中,布局+皮肤选项的示例如下所示:

代码语言:javascript
复制
<!-- Content Alt (Layout 2)-->
<?php if (( $mp_content_alt == 'true' ) && ( $mp_skin1 == 'true') ){ ?>
<link rel="stylesheet" href="<?php bloginfo('template_url'); ?>/_styles/skins/l2_coolblue.css" type="text/css" media="screen,projection" />

<?php } elseif (( $mp_content_alt == 'true' ) && ( $mp_skin2 == 'true') ){ ?>
<link rel="stylesheet" href="<?php bloginfo('template_url'); ?>/_styles/skins/l2_justminimal.css" type="text/css" media="screen,projection" />

<?php } elseif (( $mp_content_alt == 'true' ) && ( $mp_skin3 == 'true') ){ ?>
<link rel="stylesheet" href="<?php bloginfo('template_url'); ?>/_styles/l2.css"  type="text/css" media="screen,projection" />

<?php } ?>

在functions.php中,我设置了如下单选选项:

代码语言:javascript
复制
$shortname = "mp";
$layout = array("1" => "Original", "2" => "Original + Left Sidebar", "3" => "Wider  Images + Right Sidebar", "4" => "Large Images + No Text", "5" => "Smaller Images Gallery");
$skins = array("1" => "Original", "2" => "Cool Blue", "3" => "Just Minimal");

array( "name" => "Choose A Skin",
"desc" => "",
"id" => $shortname."_skins",
"type" => "radio",
"options" => $skins,
"std" => ""),

array( "name" => "Layout Options",
    "desc" => "Choose Your Layout",
    "id" => $shortname."_layouts",
    "type" => "radio",
    "options" => $layout,
    "std" => ""),

我正在努力理解如何调用不同的无线电选项?我试过这个:

代码语言:javascript
复制
<!-- Content (Layout 1)-->
<?php if ((checked( isset( $mp_layouts['1'] ) ) ) && (checked( isset( $mp_skins['2'] ) ) ) ){ ?>
<link rel="stylesheet" href="<?php bloginfo('template_url'); ?>/_styles/skins/l1_coolblue.css" type="text/css" media="screen,projection" />

<?php } elseif ((checked( isset( $mp_layouts['1'] ) ) ) && (checked( isset(   $mp_skins['3'] ) ) ) ){ ?>
<link rel="stylesheet" href="<?php bloginfo('template_url'); ?>/_styles/skins /l1_justminimal.css" type="text/css" media="screen,projection" />

<?php } elseif ( (checked( isset( $mp_layouts['1'] ) ) ) && (checked( isset( $mp_skins['1'] ) ) ) ){ ?>
<link rel="stylesheet" href="<?php bloginfo('template_url'); ?>/style.css" type="text/css" media="screen,projection" />

<?php } ?>

但这并不管用。

有什么建议吗?

非常感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-02-21 00:24:05

我解决了这个问题。

首先,我必须在一个变量中定义选项:

代码语言:javascript
复制
<?php if ( ( $layout = get_option('of_layout') ) && ( $skin = get_option('of_skin') ) ) { ?>

然后我引用数组中的选项:

代码语言:javascript
复制
<!-- Content (Layout 1)-->
<?php if (( $layout == 'Layout1' ) && ( $skin == ( 'Original' ) ) ){ ?>
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css"  media="screen,projection" />

<?php } elseif (( $layout == 'Layout1' ) && ( $skin == ( 'Blue' ) ) ){ ?>
<link rel="stylesheet" href="<?php bloginfo('template_url'); ?>/_styles/skins/l1_coolblue.css" type="text/css" media="screen,projection" />

<?php } elseif (( $layout == 'Layout1' ) && ( $skin == ( 'Minimal' ) ) ){ ?>
<link rel="stylesheet" href="<?php bloginfo('template_url'); ?>/_styles/skins/l1_justminimal.css" type="text/css" media="screen,projection" />

<?php } ?>

不同布局的数组包含: Layout1、Layout2等。不同外观的数组包含: Original、Blue、Minimal等。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5053183

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档