根据数组数量显示 div

2023-11-30

这是我的功能

function yyy_hero_image_option_callback() {
$hero_options = get_option( 'hero_options' ); 
$count=count($hero_options);
$totalimg=$count-4;
$html = '<div id="upload_yyy_sets">';
    for($i=1;$i<=$totalimg;$i++){ 
    if( isset( $hero_options['upload_yyy_link_1'] ) && $hero_options[ 'upload_yyy_link_1' ] ) { 
        $html .= '<div id="yyyclonedInput'.$i.'" class="yyyclonedInput">';
        $html .= '<input id="cs_product_menu_yyy_src_'.$i.'" type="text" size="36" name="hero_options[upload_yyy_link_'.$i.']" value="' . $hero_options['upload_yyy_link_'.$i.''] . '" /> <input id="cs_product_menu_yyy_src_'.$i.'_yyybutton" type="button" value="Add / Change" class="button-secondary yyy-upload-button"  /> <div class="button yyyremove">-</div>';
        $html .= '</div>';
    }
    }
    $html .= '</div>';

    echo $html;
    ?> <div class="button yyyclone">Add an Image</div> <?php 
}

与一点 jquery 一起,计算出数组的数量,将数字删除 4,然后根据结果数字显示 div 的数量。这一直工作得很好,但现在我添加了另一个幻灯片,需要以不同的方式进行处理。

现在这是我的新功能

function yyy_hero_image_option_callback() {
    $hero_options = get_option( 'hero_options' ); 
    foreach($hero_options as $key => $value){
        if (strpos($key, 'yyy')) {
            var_dump($value);
        }
    }
}

这个新函数只是查找其中包含字符 yyy 的数组。

如何计算数组的数量,然后像以前一样显示它们?

Thanks

更新:这是我想要显示的图像

enter image description here

对于每个具有值 zzz 的数组,我希望它显示一定数量的框,此图像将显示 3 个框,这意味着有 3 个包含 zzz 的数组。

这是数组

array(9) { 
["show_hero_options"]=> string(1) "1" 
["hero_height"]=> string(5) "600px" 
["hero_width"]=> string(4) "100%" 
["hero_buttons"]=> string(4) "show" 
["upload_zzz_link_1"]=> string(105) "http://www.blahblah.com/image_link.jpg" 
["upload_zzz_link_2"]=> string(79) "http://www.blahblah.com/image_link.jpg" 
["upload_zzz_link_3"]=> string(79) "http://www.blahblah.com/image_link.jpg" 
["upload_yyy_link_1"]=> string(79) "http://www.blahblah.com/image_link.jpg" 

}

更新2a:

这是以防万一的查询

jQuery(document).ready(function($){
// Hero Image zzz upload    
function zzz_updateClonedInput(index, element,param) {
    $(element).appendTo("#upload_zzz_sets").attr("id", "zzzclonedInput" +  index);
    $(element).find(">:first-child").attr("id", "cs_product_menu_zzz_src_" + index);
    $(element).find(">:first-child").attr("name", "hero_options[upload_zzz_link_" + index + "]");
    if(param)
    $(element).find(">:first-child").attr("value", "");
    $(element).find(">:first-child").next().attr("id", "cs_product_menu_zzz_src_" + index + "_zzzbutton");
}

$(document).on("click", ".zzzclone", function(e){
    e.preventDefault();
    var zzztoappend='<div id="zzzclonedInput1" class="zzzclonedInput"><input id="cs_product_menu_zzz_src_1" type="text" size="36" name="hero_options[upload_zzz_link_1]" value="" /><input id="cs_product_menu_zzz_src_1_zzzbutton" type="button" value="Add / Change" class="button-secondary zzz-upload-button" /><div class="button zzzremove">-</div>'
    if( $(".zzzclonedInput").length < 1){
        // create div
        $('#upload_zzz_sets').append(zzztoappend);
    }
    else {
        // clone div
        var zzzcloneIndex = $(".zzzclonedInput").length + 1;
        var zzznew_Input = $(this).closest('.zzzclonedInput').length ? $(this).closest('.zzzclonedInput').clone() : $(".zzzclonedInput:last").clone();
        zzz_updateClonedInput(zzzcloneIndex, zzznew_Input,true); 
    }   
});

$(document).on("click", ".zzzremove", function(e){
    e.preventDefault();
    $(this).parents(".zzzclonedInput").remove();
    $(".zzzclonedInput").each( function (zzzcloneIndex, zzzclonedElement) {
        zzz_updateClonedInput(zzzcloneIndex + 1, zzzclonedElement,false);
    })
});

jQuery(document).ready(function($){
    $(document).on("click", ".zzz-upload-button", function(e){
        e.preventDefault();
        upload_image($(this));
        return false; 
    });
});

function upload_image(el){
    var $ = jQuery;
    var custom_uploader;
    var button = $(el);
    var id = button.attr('id').replace('_zzzbutton', '');
    if (custom_uploader) {
        custom_uploader.open();
        return;
    }
    //Extend the wp.media object
    custom_uploader = wp.media.frames.file_frame = wp.media({
        title: 'Add Image',
        button: { text: 'Add Image' },
        multiple: false
    });
    //When a file is selected, grab the URL and set it as the text field's value
    custom_uploader.on('select', function() {
        attachment = custom_uploader.state().get('selection').first().toJSON();
        $('#'+id).val(attachment.url);
        $('#'+id).prev().attr('src', attachment.url);
        //console.log(attachment);
        console.log(id);
        //custom_uploader.close();
    });
    //Open the uploader dialog
    custom_uploader.open();
}

}); 

更新2b:

我还设法显示了适量的字段,但它只是没有增加价值。这是我的新代码

function tl_hero_image_option_callback() {
$hero_options = get_option( 'hero_options' ); 


foreach ($hero_options as $key => $value) {
if (strpos($key, '_zzz_')) {
    $html = '<div id="upload_zzz_sets">';

    if( isset( $hero_options['upload_zzz_link_1'] ) && $hero_options[ 'upload_zzz_link_1' ] ) { 
        $html .= '<div id="zzzclonedInput'.$i.'" class="zzzclonedInput">';
        $html .= '<input id="cs_product_menu_zzz_src_'.$i.'" type="text" size="36" name="hero_options[upload_zzz_link_'.$i.']" value="' . $hero_options['upload_zzz_link_'.$i.''] . '" /> <input id="cs_product_menu_zzz_src_'.$i.'_zzzbutton" type="button" value="Add / Change" class="button-secondary zzz-upload-button"  /> <div class="button zzzremove">-</div>';
        $html .= '</div>';
    }

    $html .= '</div>';

    echo $html;
}

} 


}

try:

function yyy_hero_image_option_callback() {

  $hero_options = get_option( 'hero_options' ); 
  $i=1;
  $html = '<div id="upload_zzz_sets">';

  foreach($hero_options as $key => $values){
    if (strpos($key, 'zzz')) { 
        $html .= '<div id="zzzclonedInput'.$i.'" class="zzzclonedInput">';
    $html .= '<input id="cs_product_menu_zzz_src_'.$i.'" type="text" size="36" name="hero_options[upload_zzz_link_'.$i.']" value="' . $values . '" /> <input id="cs_product_menu_zzz_src_'.$i.'_zzzbutton" type="button" value="Add / Change" class="button-secondary zzz-upload-button"  /> <div class="button zzzremove">-</div>';
    $html .= '</div>';
     $i++;

    }


  }

  $html .= '</div><div class="button zzzclone">Add an Image</div>';

  echo $html; 
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

根据数组数量显示 div 的相关文章

  • 更改 Woocommerce 中“我的帐户”页面上的标题

    我见过大量有关如何使用 WooCommerce 我的帐户仪表板重新排序 更改导航和页面的示例 但我一生都无法弄清楚如何更改每个部分的主要标题 我的帐户 订单 下载 地址等 我已经搜索过模板 但没有任何乐趣 我尝试使用条件 php 注释来回显
  • 正则表达式上的换行符

    我试图替换两个标签之间的所有内容 但我无法构建正确的表达式 这就是我所做的
  • Smarty 如果 URL 包含

    使用 Smarty 标签我想确定 URL 是否包含单词 例如 if smarty get page contains product php 我知道 contains 不存在 但是我怎样才能轻松地编写类似的东西来实现上述代码呢 所有 PHP
  • Ajax 没有将我重定向到下一页

    我正在尝试将单击的图像的 ID 传递到下一页 当我开发代码时 它没有将我重定向到下一页 当我单击 F12 并检查网络中的 POST 时 它显示变量已正确传递到下一页 如附图所示 但它没有将我重定向到下一页 所以现在我知道变量在下一页中正确传
  • 如何让Apache服务index.php而不是index.html?

    如果我将以下行放入index html文件 使 Apache 包含index php file 参观index html页面向我显示了这个 这是为什么 为什么它实际上不包含 PHP 文件 正如其他人指出的那样 您很可能没有 html设置为处
  • 将值添加到数组的最有效方法

    假设我有一个大小为N where N gt 0 是否有一种更有效的方法可以不需要 O N 1 步骤来添加到数组中 在代码中 本质上 我目前正在做的是 function prependArray value oldArray var newA
  • laravel - 使用请求类或输入类

    在宁静的控制器中 我应该使用哪个类来获取传递的变量 member gt email Input get email or member gt email Request get email 两种选择都适合我 但有什么区别 Input get
  • 未传递“client_reference_id”参数

    我使用 Stripe Checkout Stripe 版本 2016 07 06 我想通过参数 client reference id 恢复个性化数据 但在 JSON 中 当我有金额或电子邮件时 我找不到它 我是在测试环境中 你能帮我吗 先
  • 通过传递单个值获取多个索引[重复]

    这个问题在这里已经有答案了 可能的重复 列表索引搜索 https stackoverflow com questions 11292260 list index search 我必须在 int 中获取索引 其中值是相同的 因此我必须在 in
  • 通过 URL 指定控制器类与为每个控制器编写一个脚本相比,有何优缺点?

    今年夏天我安装了两个不同的 PHP 系统 每个都使用两种不同的方法 方法 1 每个任务一个 PHP 文件 该方法需要一个PHP为每个主要任务创建文件 例如 我的上传脚本可以通过http www domain com upload php O
  • 使用 Instagram Basic Display API 时出现“无效平台应用程序”错误

    我正在尝试使用 Instagram Basic 显示 API 但是当我发布授权代码以获取访问令牌时 我不断收到以下错误 error type OAuthException 代码 400 error message 平台应用无效 我正在遵循此
  • 重写 URL,将 ID 替换为查询字符串中的标题

    我对 mod rewrite 很陌生 但我做了一些搜索 但找不到这个问题的答案 我有一个网站 它只有一个 PHP 页面 根据查询字符串中传递给它的 ID 提供数十页内容 我想重写 URL 以便此 ID消失并替换为从数据库中提取的页面标题 例
  • 在 Yii 的标准中如何获得计数 (*)

    我正在尝试构建一个具有以下内容的查询group by属性 我正在尝试得到id和count它一直告诉我count is invalid列名 我怎样才能得到count来自group by询问 工作有别名 伊伊 1 1 11 其他不及格 crit
  • PHP 扩展开发入门 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 请推荐有关 PHP 低 级 modules 编程接口的帮助文章或教程 搜索我的书签 我发现的唯一链接是
  • 在 angular2 中过滤数组

    我正在研究如何在 Angular2 中过滤数据数组 我研究过使用自定义管道 但我觉得这不是我想要的 因为它似乎更适合简单的表示转换 而不是过滤大量数据 数组排列如下 getLogs Array
  • 从所有会话中注销

    我有一个注销选项 这是我的代码 session start session destroy setcookie key time 60 60 24 setcookie username time 60 60 24 我想添加另一个选项来注销所
  • phpActiveRecord 日期时间格式不正确

    当尝试使用 phpActiveRecord 在表中创建记录时 出现以下错误 Invalid datetime format 1292 Incorrect datetime value 2013 06 20 11 59 08 PDT for
  • 从字符串中获取数字

    我有一个字符串 例如 lorem 110 ipusm 我想获取 110 我已经尝试过这个 preg match all 0 9 string ret 但这正在返回 Array 0 gt 1 1 gt 1 2 gt 0 我想要这样的东西 Ar
  • ZF3/2 - 如何捕获 EVENT_DISPATCH 侦听器中引发的异常?

    有什么方法可以在 EVENT DISPATCH 监听器中抛出异常吗 class Module public function onBootstrap EventInterface event application event gt get
  • 使用 PHP 将 latin1_swedish_ci 转换为 utf8

    我有一个数据库 里面充满了类似的值 Dhaka 应该是 Dhaka 因为我在创建数据库时没有指定排序规则 现在我想修复它 我无法从最初获取数据的地方再次获取数据 所以我在想是否可以在 php 脚本中获取数据并将其转换为正确的字符 我已将数据

随机推荐

  • 如何为任意类型创建 Roslyn ITypeSymbol?

    我可以用一个语法生成器生成类型的参数Int32像这样 var generator SyntaxGenerator GetGenerator document var paramType generator TypeExpression Sp
  • 为什么 PRFRelation 不支持 fromLocalDataStore 查询?

    我有一个PFUser对象有几个PFRelation指向其他物体 当我运行以下代码时 PFRelation relation PFUser currentUser relationForKey Relation PFQuery query r
  • JavaScript 将字符串添加到数字

    我正在读MDN 上重新介绍 JavaScript并在该部分中Numbers它说您只需在字符串前面添加一个加号运算符即可将字符串转换为数字 例如 42 这将产生 42 的数字输出 但在接下来的部分中运营商它说 通过将字符串 某物 添加到任何数
  • 访问当前系统时区

    基本上我可以使用以下代码检测系统时区列表 foreach TimeZoneInfo info in tz Debug Log time zone id info Id display name info DisplayName 运行此代码
  • AjaxForm 结果中的 AjaxForm

    这是我的观点 foreach var item in Model tr Html RenderPartial PhoneRow item tr PhoneRow model PhoneModel using Ajax BeginForm E
  • Storage::move 给出“在路径中找不到文件:” Laravel 和 Ubuntu

    我想移动一些文件 Storage move posts temp val photos post gt id val 但它给了我 File not found at path home vagrant Code 有什么特殊的配置需要寻找吗
  • Pandas 和 SQLAlchemy:在连接期间重命名列

    I have table A and table B 两者都有一个专栏id和一列name 当我使用pd read sql 将 SQLAlchemy 查询的结果转换为 pandas DataFrame 生成的 DataFrame 有两列 名为
  • 解析数据 org.json.JSONException 时出错:在字符 0 处输入结束 - Android

    我正在开发一个测试 Android 应用程序 它必须显示来自 mysql 数据库的一些数据 这是我的日志 05 22 17 10 56 865 E JSON Parser 31648 Error parsing data org json
  • 如何优雅地检测 SSL

    我有一个 Web 服务 可以绑定到 ssl 或普通 http Java 客户端配置为了解服务器主机和端口 当客户端连接时 我构建服务器端点 例如http 主机 端口 服务 客户端不知道服务器是否使用 ssl 服务器始终绑定到单个端口 因此它
  • 自定义 EditorTemplate 未在 MVC4 中用于 DataType.Date

    我正在使用以下命令将 MVC3 应用程序升级到 MVC4来自微软的说明 一切都进行得相当顺利 除了我的一些日期模型属性现在呈现不同 例如 这些属性之一在视图模型中定义如下 Required ErrorMessage Required Dat
  • 当上游存在更改时,为什么 git status 显示分支是最新的?

    更改存在于跟踪分支的上游 但是当我输入时git status它表明我的本地分支机构是最新的 这是新行为吗 我是否更改了配置设置 或者出了什么问题 ubuntu host my repo git status On branch master
  • 占位符中的不同颜色[重复]

    这个问题在这里已经有答案了 我有一个带有占位符的输入字段 如下所示
  • OpenOffice Base 中的 sql 方言

    我熟悉 SQLite 和 MySQL 中的 SQL 但 OpenOffice Base 似乎要么非常瘫痪 要么我不明白如何执行原始 SQL 我想 有效地 这样做 INSERT INTO t2 SELECT NULL as id t foo
  • 如何确保编译时枚举开关的完整性?

    我有几个 switch 语句来测试enum All enum值必须在switch的陈述case陈述 在代码重构期间 可能会发生以下情况 enum收缩和增长 当 的时候enum收缩编译器会抛出错误 但如果enum成长 匹配状态被遗忘并产生运行
  • 在共享主机上显示 Laravel 存储的图像

    我已经在实时服务器上成功部署了我的第一个 Laravel 应用程序 一切看起来都很棒 除了我无法显示正在上传到的图像 myproject src storage app public myfolder1 folder 这是我在 HostGa
  • 如何将命令的输出插入批处理文件中的变量?

    在 Windows 上的批处理文件中 我想要一些变量具有以下输出dir b命令 如何实现这一目标 批处理文件不能很好地处理这个用例 我确实找到了一个描述使用临时文件的技术的线程
  • 规范与非规范终端输入

    我正在准备考试 我对 Unix 中规范与非规范输入 输出的工作方式感到困惑 例如 curses 我知道有一个缓冲区可以应用 行规则 来进行规范输入 这是否意味着非规范输入会绕过缓冲区 或者只是意味着不应用任何线路规则 此过程对于输入和输出操
  • 如何将文本转换为\x代码?

    我想将普通文本转换为 x 代码 例如 x14 x65 x60 例如 normal text base64 decode converted x codes for above text x62 141 x73 145 x36 64 x5f
  • Python用strptime解析日期

    我有以这种格式返回日期的网址 url date 2015 01 12T08 43 02Z 我不知道为什么会有字符串 将其获取为更简单 2015 01 1208 43 02 使用它来解析会更简单 datetime datetime strpt
  • 根据数组数量显示 div

    这是我的功能 function yyy hero image option callback hero options get option hero options count count hero options totalimg co