0

不确定这是否会导致我的问题,但我正在尝试使用 Mailchimp 设置 rss 活动。我有几个设置工作正常。

这次我尝试创建另一个 rss 驱动的活动,但我自己创建提要以从 mysql 中获取数据。唯一的问题是 XML 被导出为纯文本,并且没有正确格式化为 xml 文档。

我的php代码

<?php
header("Content-Type: application/rss+xml; charset=ISO-8859-1");

DEFINE ('DB_USER', '********');   
DEFINE ('DB_PASSWORD', '*********');   
DEFINE ('DB_HOST', '*******************************');   
DEFINE ('DB_NAME', '******************************'); 

$rssfeed = '<?xml version="1.0" encoding="UTF-8"?>';
$rssfeed .= '<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" version="2.0">';
$rssfeed .= '<channel>';
$rssfeed .= '<title>Free Scrabble Dictionary - Word Of The Day</title>';
$rssfeed .= '<link>http://www.freescrabbledictionary.com</link>';
$rssfeed .= '<description>This is an example RSS feed</description>';
$rssfeed .= '<language>en-us</language>';
$rssfeed .= '<copyright>Copyright (C) '.date(Y).' freescrabbledictionary.com</copyright>';

$connection = @mysql_connect(DB_HOST, DB_USER, DB_PASSWORD)
    or die('Could not connect to database');
mysql_select_db(DB_NAME)
    or die ('Could not select database');

$query = "SELECT * FROM wordday LEFT JOIN wn_synset ON wordday.synset_id = wn_synset.synset_id LEFT JOIN wn_gloss ON wordday.synset_id = wn_gloss.synset_id ORDER BY wordoftheday.ID DESC LIMIT 1";
$result = mysql_query($query) or die ("Could not execute query");

while($row = mysql_fetch_array($result)) {
    extract($row);

    if ($ss_type == 'n') {
        $ss_type = 'Noun';
    } elseif ($ss_type == 'v') {
        $ss_type == 'Verb';
    }

    $rssfeed .= '<item>';
    $rssfeed .= '<title>'.$word.' - ['.$ss_type.']</title>';
    $rssfeed .= '<description>'.$gloss.'</description>';
    $rssfeed .= '<link>http://www.freescrabbledictionary.com/dictionary/word/test/</link>';
    $rssfeed .= '<pubDate>' . date("D, d M Y H:i:s O", time()) . '</pubDate>';
    $rssfeed .= '</item>';
}

$rssfeed .= '</channel>';
$rssfeed .= '</rss>';

echo $rssfeed;
?>

您可以在http://www.freescrabbledictionary.com/includes/wordoftheday.php看到我的导出

php 脚本正在生成我需要的正确数据,但是当我从 Mailchimp 运行测试电子邮件时,用于提取标题、描述和链接的字段显示为空白。在我的 mailchimp 活动中,我将字段列为

*|RSSFEED:TITLE|*
*|RSSFEED:DESCRIPTION|*
*|RSSFEED:LINK|*

我可以使用 .php 扩展名正确格式化我的 XML 吗?那里有mailchimp专家吗?:)

谢谢你摇滚!

4

0 回答 0