我正在尝试从joomla数据库读取简介图像。我有一个产品列表,每个产品都需要显示与产品ID相匹配的介绍图像。
// content
$content = "SELECT * FROM `snm_content` WHERE catid = 13";
$contentcon = $conn->query($content);
$contentcr = array();
while ($contentcr[] = $contentcon->fetch_array());
$img = $contentcr[0]['images'];
$plaatje = explode('/', $img);
$plaatje = explode('"', $plaatje[2]);
$plaatje = $plaatje[0];
$img = preg_replace('/[^a-zA-Z0-9\']/', '_', $img);
$img = explode('___', $img);
$img = $img[1];然后在前文中我放置了以下代码:
<img src="cms/images/website/'.$plaatje.'" alt="" class="company_logo">不过,这对每个产品都显示了相同的图像。
为了从数据库字段获取图像路径,我阅读了一些关于json_decode的内容。
我怎样才能为每一种产品获得正确的形象?
以下代码打印正确的数组:
print_r($content['images']);数据库中包含所有可能的图像(介绍、完整等)的字段的示例
{"image_intro":"images\/website\/Airco_blog.jpg","float_intro":"","image_intro_alt":"","image_intro_caption":"","image_fulltext":"","float_fulltext":"","image_fulltext_alt":"","image_fulltext_caption":""}发布于 2015-12-03 05:05:02
我想这对你有用:
$article_images = $content['images'] // Get image parameters of the article
$pictures = json_decode($article_images); // Split the parameters apart
echo "<img src='" . $pictures->{'image_intro'} . "' alt='" . $pictures->{'image_intro_alt'} . "'>"; // get the intro image//编辑您的帖子以修复图像标记。
发布于 2019-10-11 20:04:51
我也有同样的问题。我试图让Twitter添加我的链接,就像facebook自动添加链接一样,但我不得不在这里调查https://cards-dev.twitter.com/validator ...Tthe的卡片验证器,我让它使用Joomla 3.9.11在模板default.php中添加了这段代码.我能够适当地添加标题,描述和正确的图片,通常是第一篇文章。
<head>
<?php
//Added for TWITTER
$option = JRequest::getCmd('option');
$view = JRequest::getCmd('view');
if ($option=="com_content" && $view=="article") {
$ids = explode(':',JRequest::getString('id'));
$article_id = $ids[0];
$article =& JTable::getInstance("content");
$article->load($article_id);
$theArticle = $article->get("title");
$theImages = $article->get("images");
$pictures = json_decode($theImages); // Split the parameters apart
$timage= "http://yourdomain.com/".$pictures->{'image_intro'};
}
$doc =& JFactory::getDocument();
$doc->addCustomTag( '
<meta name="twitter:title" content="'.mb_strimwidth(strip_tags($theArticle),0,225, " ...").'"=""/>
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="yoursite">
<meta name="twitter:creator" content="yourcreator">
<meta name="twitter:url" content="'.JURI::current().'">
<meta name="twitter:description" content="'.mb_strimwidth(strip_tags($doc->getMetaData( 'description' )),0,225, " ...").'"=""/>
<meta name="twitter:image" content="'.$timage.'">
');
?>
<jdoc:include type="head" />
<?php $this->loadBlock('head') ?>
</head>https://stackoverflow.com/questions/34040929
复制相似问题