国内流行的内容管理系统(CMS)多端全媒体解决方案 https://www.dedebiz.com
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

freelist_edit.htm 14KB

2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
2年前
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="<?php echo $cfg_soft_lang; ?>">
  5. <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
  6. <title>修改自由列表</title>
  7. <link rel="stylesheet" href="../static/web/css/bootstrap.min.css">
  8. <link rel="stylesheet" href="../static/web/font/css/font-awesome.min.css">
  9. <link rel="stylesheet" href="../static/web/css/admin.css">
  10. <script src="../static/web/js/jquery.min.js"></script>
  11. <script src="../static/web/js/bootstrap.bundle.min.js"></script>
  12. <script src="js/main.js"></script>
  13. <script>
  14. function ChangeListStyle() {
  15. var itxt = document.getElementById("myinnertext");
  16. var myems = document.getElementsByName("liststyle");
  17. if (myems[0].checked) itxt.value = document.getElementById("list1").innerHTML;
  18. else if (myems[1].checked) itxt.value = document.getElementById("list2").innerHTML;
  19. else if (myems[2].checked) itxt.value = document.getElementById("list3").innerHTML;
  20. else if (myems[3].checked) itxt.value = document.getElementById("list4").innerHTML;
  21. itxt.value = itxt.value.replace("<br>", "<br>");
  22. itxt.value = itxt.value.toLowerCase();
  23. }
  24. function ShowHide(objname) {
  25. var obj = document.getElementById(objname);
  26. if (obj.style.display == "block" || obj.style.display == "")
  27. obj.style.display = "none";
  28. else
  29. obj.style.display = "block";
  30. }
  31. function SelectTemplets(fname) {
  32. var pos = GetWinPos(800,600);
  33. window.open("./dialog/select_templets.php?&activepath=<?php echo urlencode($cfg_templets_dir)?>&f=" + fname, "poptempWin", "scrollbars=yes,resizable=yes,statebar=no,width=800,height=600,left=" + pos.left + ", top=" + pos.top);
  34. }
  35. function CheckSubmit() {
  36. if (document.form1.title.value == "") {
  37. ShowMsg("自由列表标题标题不能为空");
  38. document.form1.title.focus();
  39. return false;
  40. }
  41. return true;
  42. }
  43. </script>
  44. <link rel="stylesheet" href="css/codemirror.css">
  45. <script src="js/codemirror.js"></script>
  46. <script src="js/mode/xml/xml.js"></script>
  47. <script src="js/mode/javascript/javascript.js"></script>
  48. <script src="js/mode/css/css.js"></script>
  49. <script src="js/mode/htmlmixed/htmlmixed.js"></script>
  50. </head>
  51. <body>
  52. <center>
  53. <table width="98%" cellpadding="1" cellspacing="1" align="center" class="table maintable mt-3 mb-3">
  54. <form action="freelist_edit.php" method="post" name="form1" onSubmit="return CheckSubmit();">
  55. <input type="hidden" name="dopost" value="save">
  56. <input type="hidden" name="aid" value="<?php echo $row['aid']?>">
  57. <tr>
  58. <td bgcolor="#f8f8f8">
  59. <table width="98%" cellpadding="0" cellspacing="0" class="table-borderless">
  60. <tr>
  61. <td width="30%"><a href="freelist_main.php">自由列表管理</a> &gt; 修改自由列表</td>
  62. <td width="70%" align="right"></td>
  63. </tr>
  64. </table>
  65. </td>
  66. </tr>
  67. <tr>
  68. <td class="p-0">
  69. <table width="100%" align="right" cellpadding="0" cellspacing="1" class="table-borderless">
  70. <tr>
  71. <td class="p-0">
  72. <table width="100%" cellspacing="1" cellpadding="0">
  73. <tr>
  74. <td colspan="2"><i class="fa fa-question-circle" title="帮助"></i> 自由列表标记的说明:自由列表标记(freelist)的功能基本等同于arclist标记,区别是freelist标记支持分页,这让生成按自定义排序规则的文章列表(如按标题拼音部首排序等)等轻松的实现统一化管理,并且自由列是独立编译的,不与其它模板混在一起,这样不会影响系统生成网页或访问速度</td>
  75. </tr>
  76. <tr>
  77. <td width="260">自由列表标题:</td>
  78. <td><input type="text" name="title" id="title" value="<?php echo $row['title']?>" style="width:260px"></td>
  79. </tr>
  80. <tr>
  81. <td>列表HTML存放目录:</td>
  82. <td><input type="text" name="listdir" id="listdir" value="<?php echo $row['listdir']?>" style="width:260px"> {listdir}变量的值</td>
  83. </tr>
  84. <tr>
  85. <td>目录默认页名称:</td>
  86. <td>
  87. <input type="text" name="defaultpage" id="defaultpage" value="<?php echo $row['defaultpage']?>" style="width:260px">
  88. <label><input type="checkbox" name="nodefault" id="nodefault" value="1" <?php if($row['nodefault']==1) echo "checked"; ?>> 不使用目录默认主页</label>
  89. </td>
  90. </tr>
  91. <tr>
  92. <td>命名规则:</td>
  93. <td><input type="text" name="namerule" id="namerule" value="<?php echo $row['namerule']?>" style="width:260px"></td>
  94. </tr>
  95. <tr>
  96. <td height="36">列表模板:</td>
  97. <td>
  98. <input type="text" name="templet" id="templet" value="<?php echo $row['templet']?>" style="width:260px">
  99. <button type="button" name="set4" onClick="SelectTemplets('form1.templet');" class="btn btn-success btn-sm">浏览</button>
  100. </td>
  101. </tr>
  102. <tr>
  103. <td>最大列出页数:</td>
  104. <td><input type="text" name="maxpage" id="maxpage" value="<?php echo $row['maxpage']; ?>" style="width:60px"></td>
  105. </tr>
  106. <tr>
  107. <td></td>
  108. <td>以下选项用于模板里的 &lt;meta name=&quot;keywords|description&quot; content=&quot;&quot;&gt; 描述</td>
  109. </tr>
  110. <tr>
  111. <td>关键词:</td>
  112. <td><input type="text" name="keywords" id="keywords" value="<?php echo $row['keywords']; ?>" style="width:260px"></td>
  113. </tr>
  114. <tr>
  115. <td>列表描述:</td>
  116. <td><textarea name="description" id="description" style="width:360px;height:50px"><?php echo $row['description']?></textarea></td>
  117. </tr>
  118. </table>
  119. </td>
  120. </tr>
  121. <tr>
  122. <td style="background:#fbfce2">列表样式:这里是定义自由列表模板里的{dede:freelist/}标记的样式和属性</td>
  123. </tr>
  124. <tr>
  125. <td>限定栏目:
  126. <?php
  127. $typeid = $ctag->GetAtt('typeid');
  128. echo "<select name='typeid' style='width:160px'>";
  129. echo "<option value='0'>不限栏目</option>";
  130. $dsql->SetQuery("Select id,typename, channeltype From #@__arctype");
  131. $dsql->Execute();
  132. while($lrow = $dsql->GetObject()){
  133. $disable = '';
  134. if($lrow->channeltype < -1)
  135. {
  136. $disable = 'disabled';
  137. }
  138. if($lrow->id==$typeid) echo "<option value='{$lrow->id}' selected $disable>{$lrow->typename}</option>";
  139. else echo "<option value='{$lrow->id}' $disable>{$lrow->typename}</option>";
  140. }
  141. echo "</select>";
  142. ?>
  143. </td>
  144. </tr>
  145. <tr>
  146. <td>限定频道:
  147. <?php
  148. $channel = $ctag->GetAtt('channel');
  149. echo "<select name='channel' style='width:160px'><option value='0'>不限</option>";
  150. $dsql->SetQuery("Select id,typename From #@__channeltype where id>0");
  151. $dsql->Execute();
  152. while($nrow = $dsql->GetObject())
  153. {
  154. if($nrow->id==$channel) echo "<option value='{$nrow->id}' selected>{$nrow->typename}</option>";
  155. else echo "<option value='{$nrow->id}'>{$nrow->typename}</option>";
  156. }
  157. echo "</select>";
  158. ?>(如果限定了频道内容模型,则允许使用附加表指定的列表字段作为底层变量)
  159. </td>
  160. </tr>
  161. <tr>
  162. <td>附加属性:
  163. <?php
  164. $att = $ctag->GetAtt('att');
  165. echo "<select name='att' style='width:160px'>";
  166. echo "<option value='0'>不限</option>";
  167. $dsql->SetQuery("Select * From #@__arcatt");
  168. $dsql->Execute();
  169. while($nrow = $dsql->GetObject())
  170. {
  171. if($att==$nrow->att)
  172. {
  173. echo "<option value='{$nrow->att}' selected>{$nrow->attname}</option>";
  174. } else {
  175. echo "<option value='{$nrow->att}'>{$nrow->attname}</option>";
  176. }
  177. }
  178. echo "</select>";
  179. ?>
  180. 文档发布时间:<input type="text" name="subday" id="subday" size="6" value="<?php echo $ctag->GetAtt('subday')?>"> 天以内(0表示不限)
  181. </td>
  182. </tr>
  183. <tr>
  184. <td>
  185. 每页记录数:<input type="text" name="pagesize" id="pagesize" value="<?php echo $ctag->GetAtt('pagesize')?>" size="4">
  186. 显示列数:<input type="text" name="col" id="col" value="<?php $col = $ctag->GetAtt('col'); $v = ( empty($col) ? '1' : $col ); echo $v; ?>" size="4">
  187. 标题长度:<input type="text" name="titlelen" id="titlelen" value="<?php echo $ctag->GetAtt('titlelen')?>" size="4">(1字节 = 0.5个中文字)
  188. </td>
  189. </tr>
  190. <tr>
  191. <td>
  192. <?php
  193. $setype = $ctag->GetAtt('type');
  194. if($setype=='') $setype = 'X';
  195. ?>
  196. 高级筛选:
  197. <label><input type="checkbox" name="types[]" id="type1" value="image" <?php if(preg_match("#image#i",$setype)) echo ' checked'; ?>> 带缩略图</label>
  198. <label><input type="checkbox" name="types[]" id="type2" value="commend" <?php if(preg_match("#commend#i", $setype)) echo ' checked'; ?>> 推荐</label>
  199. <label><input type="checkbox" name="types[]" id="type3" value="spec" class="inputbut" <?php if(preg_match("#spec#i", $setype)) echo ' checked'; ?>> 专题</label>
  200. 关键词:<input type="text" name="keywordarc" id="keywordarc" value="<?php echo $ctag->GetAtt('keyword')?>">(&quot;,&quot;逗号分开)
  201. </td>
  202. </tr>
  203. <tr>
  204. <td>排列顺序:
  205. <?php
  206. $orderby = $ctag->GetAtt('orderby');
  207. $sorta = "sortrank,置顶权限值;pubdate,发布时间;senddate,录入时间;click,点击量;id,文档id,lastpost,最后评论时间;postnum,评论总数;rand,随机获取";
  208. $sortas = explode(';',$sorta);
  209. foreach($sortas as $v)
  210. {
  211. $vs = explode(',',$v);
  212. $vs[0] = trim($vs[0]);
  213. $sortarrs[$vs[0]] = $vs[1];
  214. }
  215. ?>
  216. <select name="orderby" id="orderby" style="width:160px">
  217. <?php
  218. echo "<option value=\"$orderby\" selected>{$sortarrs[$orderby]}</option>";
  219. ?>
  220. <option value="sortrank">置顶权限值</option>
  221. <option value="pubdate">发布时间</option>
  222. <option value="senddate">录入时间</option>
  223. <option value="click">点击量</option>
  224. <option value="id">文档id</option>
  225. <option value="lastpost">最后评论时间</option>
  226. <option value="postnum">评论总数</option>
  227. </select>
  228. <label><input type="radio" name="order" value="desc" <?php if($ctag->GetAtt('orderway')=='desc') echo "checked"; ?>> 由高到低</label>
  229. <label><input type="radio" name="order" value="asc" <?php if($ctag->GetAtt('orderway')=='asc') echo "checked"; ?>> 由低到高</label>
  230. </td>
  231. </tr>
  232. <tr>
  233. <td>循环内的单行记录样式(InnerText):[<a href='javascript:ShowHide("innervar");'><i class="fa fa-question-circle" title="帮助"></i> 底层变量field参考</a>]</td>
  234. </tr>
  235. <tr>
  236. <td><textarea name="innertext" cols="80" rows="6" id="myinnertext" style="width:80%;height:120px"><?php echo $ctag->GetInnerText()?></textarea></td>
  237. </tr>
  238. <tr>
  239. <td id="innervar" style="display:none">
  240. <span><i class="fa fa-question-circle" title="帮助"></i> 支持字段(底层变量[field:varname/]):id,title,color,typeid,ismake,description,pubdate,senddate,arcrank,click,litpic,typedir,typename,arcurl,typeurl,<br>stime(pubdate 的&quot;0000-00-00&quot;格式),textlink,typelink,imglink,image普通字段直接用[field:字段名/]表示<br>·Pubdate发布时间的调用参数 [field:pubdate function=MyDate('Y--%d H:i:s',@me)/]</span>
  241. </td>
  242. </tr>
  243. <tr>
  244. <td align="center" class="py-2"><button name="Submit2" type="submit" id="Submit2" class="btn btn-success btn-sm">保存</button></td>
  245. </tr>
  246. </table>
  247. </td>
  248. </tr>
  249. </form>
  250. </table>
  251. </center>
  252. <script>
  253. var editor = CodeMirror.fromTextArea(document.getElementById('myinnertext'), {
  254. lineNumbers: true,
  255. lineWrapping: true,
  256. mode: 'text/html'
  257. });
  258. </script>
  259. </body>
  260. </html>