使用php

时间:2017-11-14 18:49:02

标签: php custom-post-type

我有一个我为客户构建的Wordpress网站,一个自定义帖子类型字段将允许用户输入链接,然后输入链接的文本,格式如下图所示,并称为资源。 enter image description here

这些信息需要作为<li>在锚标记中输出。我对php很新,这是我到目前为止的代码

<ul>
<?php
        $rawcontent = get_field("resources");
        $rawcontent = preg_replace("!</?p[^>]*>!", "", $rawcontent); 
        $all_links = preg_split("/(\n)/", $rawcontent);
        $firstpart = array_pop(explode(',', $rawcontent));

   foreach($all_links as $link) {
       if(!trim($link)) continue;
       echo "<li><a href='$link'>$firstpart</a></li>";
   }
?>
</ul>

当我在执行任何代码之前打印$ rawcontent(resources)时,将其显示为: www.mylink1.com,链接副本1

www.mylink2.com,链接副本2

www.mylink3.com,链接副本3

使用我现在实现的代码,它出来了 enter image description here

如何才能让它只返回href的链接以及每个锚标记的锚文本的链接复制部分?

1 个答案:

答案 0 :(得分:1)

我认为这样做会 我首先像你一样在新线上爆炸,然后我预先排好了这些线 当我走线时,我用逗号分隔线。
现在我有一个数组,链接作为第一项,文本作为第二项。

$str = "www.mylink1.com,link copy 1
www.mylink2.com, link copy 2
www.mylink3.com,link copy 3";

$lines = explode(PHP_EOL, $str);

Foreach($lines as $line){
    $linktext = explode(",", $line);
    Echo  "<li><a href='$linktext[0]'>$linktext[1]</a></li>";
}

https://3v4l.org/9DEoo

我看到你的link2在文本中有一个空格 当你回音时,你可以删除它。

Echo  "<li><a href='" . trim($linktext[0]) . "'>" . trim($linktext[1]) . "</a></li>\n";

我在链接和文本上都添加了修剪,这样可以很好。以防万一...
https://3v4l.org/6RkW3

相关问题