vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   Modification Requests/Questions (Unpaid) (https://vborg.vbsupport.ru/forumdisplay.php?f=112)
-   -   Help with plugin to output stuff in header (https://vborg.vbsupport.ru/showthread.php?t=277806)

mojodeluxe 01-31-2012 03:25 AM

Help with plugin to output stuff in header
 
I want to harmonize my newly installed forum with the rest of my site. For this, I use xmlrpc to pull the site's html header in the hope of using same html code in the forum header.

I wrote the following plugin, using global_start as the hook. The code looks like this :

Code:

require_once('xmlrpclibrary.inc');
$m = new xmlrpcmsg('method.name');
  $c = new xmlrpc_client("/xmlrpc.php", "mydomain.com", 80);
  $r = $c->send($m);
  if (!$r->faultCode()) {
      $v = $r->val->me['string'];
  }

$myhtmlheader = print $v;

*************
And then I put {vb:raw myhtmlheader} in the header template. Unfortunately, the result is output before anything else on the page (before the html <head> tag, before the DOCTYPE even, etc.).

I've also tried to replace the last line with:

Code:

ob_start();
print $v;
$myhtmlheader = ob_get_contents();
ob_end_clean;

but that doesn't seem to output anything in the template.

Any idea about what I'm doing wrong ?

Many thanks

Max Taxable 01-31-2012 03:27 AM

Quote:

Originally Posted by mojodeluxe (Post 2294450)
And then I put {vb:raw myhtmlheader} in the header template. Unfortunately, the result is output before anything else on the page (before the html <head> tag, before the DOCTYPE even, etc.)

Does it make any difference what line in the header template you put the call on?

mojodeluxe 01-31-2012 03:28 AM

Good question Max.

No it doesn't. I've tried it a numerous place, nesting it in different div tags, etc.

Max Taxable 01-31-2012 03:30 AM

Have you tried different hooks?

mojodeluxe 01-31-2012 03:34 AM

I've tried a few, I don't remember which honestly. Right now I have debug mode turned on and I know I've tried global_start which I understand is called quite early, and also forumhome_complete and page_templates which are 2 of the last ones.

Max Taxable 01-31-2012 03:43 AM

I'm stumped because I don't see anything in the code that would place this input information above the rest of the code in the header template. It should marry to where you put the call.

mojodeluxe 01-31-2012 03:55 AM

Quote:

Originally Posted by Max Taxable (Post 2294456)
I'm stumped because I don't see anything in the code that would place this input information above the rest of the code in the header template. It should marry to where you put the call.

I have a feeling my issue may be related to the "print" in my code, perhaps that causes the problem as the global_start hook is called quite early.

--------------- Added [DATE]1327986209[/DATE] at [TIME]1327986209[/TIME] ---------------

Quote:

Originally Posted by mojodeluxe (Post 2294450)

I've also tried to replace the last line with:

Code:

ob_start();
print $v;
$myhtmlheader = ob_get_contents();
ob_end_clean;


This code actually has a typo in it, ob_end_clean; should be ob_end_clean();

Oddly enough, when I use this code with the typo (i.e. ob_end_clean;), the result is similar to simply using $myhtmlheader = print $v;, that is the output appears on the very top of the html document, before the DOCTYPE.

Using the proper ob_end_clean(); code doesn't return anything on the page.

--------------- Added [DATE]1327988678[/DATE] at [TIME]1327988678[/TIME] ---------------

Got it


Code:

require_once('xmlrpclibrary.inc');
$m = new xmlrpcmsg('method.name');
  $c = new xmlrpc_client("/xmlrpc.php", "mydomain.com", 80);
  $r = $c->send($m);
  if (!$r->faultCode()) {
      $v = $r->val->me['string'];
  }

$myhtmlheader = $v;

vB_Template::preRegister(
    'header', array('myhtmlheader' => $myhtmlheader)
);



then use {vb:raw myhtmlheader} in the template file.



Link to further examples : https://vborg.vbsupport.ru/showthread.php?t=228078


All times are GMT. The time now is 08:28 PM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01075 seconds
  • Memory Usage 1,737KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (4)bbcode_code_printable
  • (3)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (7)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete