Web Analytics Made Easy -
StatCounter [Solved] How do I add a new variable in a .TPL file - CodingForum

Announcement

Collapse
No announcement yet.

[Solved] How do I add a new variable in a .TPL file

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • [Solved] How do I add a new variable in a .TPL file

    I need a solution to what's bound to be a really simplistic problem. I'm running a php/mysql script on my site and one of the functions it performs to display a news/text post and dynamically link it to a corresponding image file. If you're thinking "webcomic" you're right on the money. The news posts are formatted according to a .tpl file.

    The script itself is Comikaze and I've tried contacting the creator, but I've not heard anything back for quite some time and after several attempts.

    The thing I need help with is that I need to insert a link into that .tpl (news_print.tpl) file that will dynamically link from the news post to the corresponding image page. I've discovered that simply inserting PHP into the news_print.tpl file does not work. What I thought I'd do would be to define a new variable that I'd be able to use inside the news_print.tpl file.

    Variables that already exist are {NES_AVATAR}, {NEWS_POST}, {NEWS_DATE}, {NEWS_POSTER}, and a few others.

    The variable I need is already used by the script elsewhere as $comic_id; the comic rotation/navigation uses it to, well "navigate." However how to turn it into something that news_print.tpl can use... that's what I'm not sure about. I did some serious digging and I found this specific file that looks like it has to do with the news_print.tpl, and is called newsDO.class.php. Inside the code on line #48 begins the following code:
    PHP Code:
    function formatNewsPost($poster,$email,$avatar,$title,$post,$time,$nl2br) {
        
    $post $this->nl2brNewsPost($post,$nl2br);
        if (!empty(
    $avatar))
            
    $avatar "<img src=\"$avatar\" alt=\"$poster\" border=\"0\" />";
        
    $replace['{NEWS_POSTER}'] = $poster;
        
    $replace['{NEWS_EMAIL}'] = $email;
        
    $replace['{NEWS_AVATAR}'] = $avatar;
        
    $replace['{NEWS_TITLE}'] = $title;
        
    $replace['{NEWS_POST}'] = $post;
        
    $replace['{NEWS_DATE}'] = $time;
            
        return 
    $this->_common->getTemplate('news_print.tpl'$replace);

    I thought that if I added $comic_id into the function call on the first line and the $replace['{COMIC_ID}'] = $comic_id; down with the rest that this would allow me to use {COMIC_ID} as a variable with the news_print.tpl file. Unfortunately, all it does when I attempt to use it is spits out this error:
    Code:
    Warning: Missing argument 8 for formatnewspost() in /var/www/html/smcomikaze/includes/classes/newsDO.class.php on line 48
    My website is essentially done, this is the last bit of code I need to wedge into it and *poof* off it goes. Once I can get this to work it's keg time!

    Thanks to anyone who's taken the time to read this over!
    Last edited by toasty; Oct 9, 2006, 03:23 PM. Reason: Found a solution

  • #2
    Figured it out!

    I was forgetting to update all the function calls with the new variable. Woo Hoo!!

    Comment

    Working...
    X