《超级单页|单页网站模板|seo单页》怎么批量把所有文章设置为广告单页?
12002023-12-25 10:48:29
广告单页是《超级单页|单页网站模板|seo单页》文章编辑——扩展功能中的一个功能,开启后可以把文章设置为独立的单页,一般情况下只有少部分的文章需要开启,用不到批量设置。
但是如果你需要把所有的文章都设置为广告单页,又不想一一的操作该怎么办呢?
以下方案是用户赞助了100帮他做的。
你可以创建一个updata.php的文件放在你的网站根目录,然后访问你的网址/updata.php即可,当所有文章都变成广告单页就会提示“操作结束”。
代码如下:
<?php require 'zb_system/function/c_system_base.php'; global $zbp; $sql = "SELECT * FROM " . $zbp->table['Post']; $array = $zbp->GetListCustom($zbp->table['Post'], $zbp->datainfo['Post'], $sql); $count = count($array); $batchSize = 100; $delaySeconds = 2; for ($i = 0; $i < $count; $i += $batchSize) { $batch = array_slice($array, $i, $batchSize); foreach ($batch as $post) { // 检查 Type 的值是否为 1 if ($post->Type == 1) { continue; // 如果为 1,不进行任何操作,继续下一次循环 } $meta = $post->Metas->GetData(); if (!isset($meta['onepage'])) { // 如果不存在 'onepage' 键,则设置其值为 '1' $meta['onepage'] = '1'; $post->Metas->onepage = '1'; // 直接设置 'onepage' 值为 '1' $post->Save(); } } if ($i + $batchSize < $count) { sleep($delaySeconds); // 等待2秒 } } echo "操作结束!"; ?>
以上代码中用到了分批操作,每次操作100篇文章,间隔2秒,在操作过程中没有进度条,如果你的文章特别多,请耐心等待。
-
喜欢(11)
-
不喜欢(1)