안녕하세요. kboard를 잘 사용하고 있는 유저입니다.
rss의 일부분을 고치고 싶은데요.
저희는 아래와 같이 <channel> 부분에 rss 발행시간이 적히기를 원합니다만
<rss version="2.0">
<channel>
<title>매체명</title>
<link>매체 대표 URL</link>
<description>매체 설명 또는 매체명</description>
<pubDate>RSS 발행 시간(지역시간이 표시된 Date형식, ex: Tue, 11 Oct 2022 20:02:56 +0900)</pubDate>
<image>
<title>대표 이미지 제목(ex:Logo)</title>
<url>대표이미지(로고이미지 url)</url>
</image>
<item>
<guid>기사를 식별할 수 있는 고유 문자열(해당 기사 ID 값)</guid>
<title>제목</title>
<link>매체사 기사 URL</link>
//대표이미지(썸네일 이미지 url)
<enclosure url="이미지 URL" type="image/jpeg(확장자 및 이미지 또는 영상)"/>
<description>정제된 기사 본문</description>
<category>기사 카테고리</category>
<pubDate>기사 발행일자(지역시간이 표시된 Date형식 , ex: Wed, 12 Oct 2022 05:00:00 +0900)</pubDate>
<author>기자명(작성자) or 작성자 email</author>
</item>
</channel>
</rss>
실제로 기본설정에는 아예 rss 발행시간 부분이 빠져있습니다.
kboard의 rss.php 파일을 보니 아래와 같은 형태인데요.
<rss version="2.0">
<channel>
<title><?php bloginfo('name')?></title>
<link><?php bloginfo('url')?></link>
<description><?php bloginfo('description')?></description>
<?php while($content = $list->hasNext()): $board = new KBoard($content->board_id);?>
<item>
<title><![CDATA[<?php echo wp_strip_all_tags($content->title)?>]]></title>
<link><![CDATA[<?php echo $url->getDocumentRedirect($content->uid)?>]]></link>
<description><![CDATA[<?php echo $content->content?>]]></description>
<author><![CDATA[<?php echo $content->member_display?>]]></author>
<pubDate><?php echo gmdate('D, d M Y H:i:s +0900', strtotime($content->date))?></pubDate>
<category domain="<?php echo $url->getBoardRedirect($content->board_id)?>"><![CDATA[<?php echo $board->board_name?>]]></category>
</item>
<?php endwhile?>
</channel>
</rss>
<item>부분에는 <pubDate> 코드가 있지만 <channel> 아래에는 <pubDate>코드가 없습니다.
그렇다고 제가 <description> 코드 아래에 <pubDate><?php echo gmdate('D, d M Y H:i:s +0900', strtotime($content->date))?></pubDate>
코드를 추가해보니 날짜가 1970년 뭐 이런식으로 나오더군요...
<pubDate>라는 태그로 넣고 싶은데 혹시 어떻게 할 수 있을까요?
안녕하세요~^^
게시판의 구조를 생각해보시면
item 부분에만 발행일이 있는 것이 당연함을 이해하실 둣 합니다.
게시판은 게시글의 발행일이 주요 데이터이고
게시판 자체의 생성일은 표시되고 있지 않습니다.
코드 구조상 $content 이후의 부분이
게시글 데이터의 코드입니다.
어떤 목적 때문에 해당 코드가 필요하신 건지
남겨주시면 저희도 좋은 방안이 있을지 찾아보겠습니다
고맙습니다.
안녕하세요~
저희가 콘텐츠를 제휴 업체에 제공을 하고 있는데요.
제휴 업체에서 콘텐츠를 가져갈때 rss 기반으로 가져간다고 합니다.
해당 업체에서는 다양한 웹사이트로 부터 콘텐츠를 제공받다보니 rss 조건을 맞춰주기를 요구해서요..
제 생각에는 이 부분은 구색만 맞추면 될것 같아서 가장 최신글의 <pubDate>를 그대로 rss 발행시간으로 표시하고 싶습니다.
이렇게 할 수 있는 방법은 없을까요?
global $wpdb;
$date = $wpdb->get_var("SELECT `date` FROM `{$wpdb->prefix}kboard_board_content` ORDER BY `{$wpdb->prefix}kboard_board_content`.`uid` ASC");
위 코드는 가장 최근에 발행된 게시글의 날짜를 가져오는 코드입니다.
형태는 20220104095816 입니다.
위 코드를 적절히 활용하여 적용해보시겠어요?
고맙습니다.