Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

ROZWIĄZANY: Wstawianie gotowej treści ze stringa w sidebarze


Rekomendowane odpowiedzi

Witam ;)

Mam drobny problem, gdyż potrzebuję zrobić własne 'monitory' w sidebarze ;)

Plik generujący te monitory znajduje się na innym serwerze i nie za bardzo wiem jak zamienić zawartość stringu w pozycję w sidebarze..


<hookexport>
<hookdata>
<config>
<hook_name>
<![CDATA[Lista Naszych serwerow]]>
</hook_name>
<hook_desc>
<![CDATA[Dodaje serwery cs do sidebara]]>
</hook_desc>
<hook_author>
Leihto
</hook_author>
<hook_email>
</hook_email>
<hook_website>
</hook_website>
<hook_update_check>
</hook_update_check>
<hook_requirements>
<![CDATA[a:4:{s:20:"hook_ipb_version_min";i:0;s:20:"hook_ipb_version_max";i:0;s:20:"hook_php_version_min";s:0:"";s:20:"hook_php_version_max";s:0:"";}]]>
</hook_requirements>
<hook_version_human>
1.0.0
</hook_version_human>
<hook_version_long>
100
</hook_version_long>
<hook_extra_data>
<![CDATA[a:2:{s:7:"display";a:2:{s:9:"templates";s:36:"From skin_boards: NaszeSerweryGier";a:0:{}}]]>
</hook_extra_data>
<hook_key>
NaszeSerweryGier
</hook_key>
</config>
</hookdata>
<hookfiles>
<file>
<hook_file_real>
hookNaszeSerwery.php
</hook_file_real>
<hook_type>
templateHooks
</hook_type>
<hook_classname>
GrajkoweSerweryGier
</hook_classname>
<hook_data>
<![CDATA[a:7:{s:12:"dataLocation";s:0:"";s:15:"classToOverload";s:0:"";s:9:"skinGroup";s:11:"skin_boards";s:12:"skinFunction";s:18:"boardIndexTemplate";s:4:"type";s:7:"foreach";s:2:"id";s:11:"side_blocks";s:8:"position";s:9:"outer.pre";}]]>
</hook_data>
<hooks_source>
<![CDATA[<?php class NaszeSerweryGier { public $registry; public function __construct() { $this->registry = ipsRegistry::instance(); $this->DB = $this->registry->DB(); $this->settings =& $this->registry->fetchSettings(); $this->request =& $this->registry->fetchRequest(); $this->lang = $this->registry->getClass('class_localization'); $this->member = $this->registry->member(); $this->memberData =& $this->registry->member()->fetchMemberData(); $this->cache = $this->registry->cache(); $this->caches =& $this->registry->cache()->fetchCaches(); } public function getOutput() {include('./statusy_serwerow/NaszeSerwery.php');$blocks = $ser;return $this->registry->output->getTemplate( 'boards' )->Nasze_Serwery_Sidebar( $blocks );; } } }?>]]>
</hooks_source>
</file>

</hookfiles>
<hookextras_language/>
<hookextras_modules/>
<hookextras_help/>
<hookextras_templates>
<templates>
<template_set_id>
0
</template_set_id>
<template_group>
skin_boards
</template_group>
<template_content>
<![CDATA[<div class='general_box clearfix'> <h3>Nasze Serwery</h3> <div class='_sbcollapsable'> <ol>{$data}</ol> </div> </div>]]>
</template_content>
<template_name>
Nasze_Serwery_Sidebar
</template_name>
<template_data>
<![CDATA[$data='']]>
</template_data>
<template_updated>
1278782055
</template_updated>
<template_removable>
0
</template_removable>
<template_user_added>
0
</template_user_added>
<template_user_edited>
0
</template_user_edited>
</templates>
</hookextras_templates>
<hookextras_tasks/>
<hookextras_database_create/>
<hookextras_database_alter/>
<hookextras_database_update/>
<hookextras_database_insert/>
</hookexport>

W spoilerze załączam mój hook..

Od razu mówię że jestem newbie w pisaniu hooków do IPB :<

Edytowane przez Blakowen
Odnośnik do komentarza
Udostępnij na innych stronach

Na innym serwerze? Daj normalny kod lub wklejkę lub załącznik bo tego czytać się nie da.

I wytłumacz "jak zamienić zawartość stringu w pozycję w sidebarze.."

No i przede wszystkim polecam http://community.invisionpower.com/resources/documentation/index.html

Odnośnik do komentarza
Udostępnij na innych stronach

Na innym serwerze, dlatego że poprostu nie chcę zaśmiecać sobie ftp serwera.

I wytłumacz "jak zamienić zawartość stringu w pozycję w sidebarze.."

Chodzi o to że sktypt generujący monitorki zwraca zmienną "$ser". I ona ma być wstawiona w sidebarze..

Kod nie wiem czy jest dobry, bo wzorowałem się na innych pluginach.

Plik generujący monitory: Wklej.org

W załączniku dodaje hook.xml :)

hookNaszeSerwery.xml

Edytowane przez Blakowen
Odnośnik do komentarza
Udostępnij na innych stronach

Co nie zmienia faktu, że ponad 700 znaków w jednej linii czytelne nie jest...

Tak czy inaczej nie zadziała ci coś takiego jak masz pliki na różnych serwerach.

Jakby to było takie proste to można by zrobić:

include('http://forum.invisionize.pl/conf_global.php')

By poznać niezbędne dane dostępu tego forum.

Nie rozumiem w ogóle tego twojego działania. Plik NaszeSerwery.php jak i biblioteka GameQ ważą tyle co nic i bałaganu nie robią a ty kombinujesz strasznie jakby nie wiadomo co to było. Żeby to rozdzielić na różne serwery to trzeba by zacząć bawić się pobieraniem treści, socketami i czym kto lubi.

Podsumowując to albo wrzucisz wszystko na jeden serwer i będzie działało dzięki include albo skorzystasz z innej metody przy której najwyżej będziesz potrzebował trochę pomocy a nie gotowca.

Odnośnik do komentarza
Udostępnij na innych stronach

Tu też są przecież pliki PHP. XML to wersja wyeksportowana, z ustawieniami i/lub tłumaczeniami i/lub skinami i/lub taskami i/lub zadaniami i/lub edycjami i/lub o czymś zapomniałem. Wszystko można ładnie wyklikać i nie trzeba ręcznie edytować pliku XML.

Na prawdę poczytaj dokumentację, bo wydaje mi się że robisz to w ciemno i dlatego to wszystko wygląda tak jak wygląda.

  • Lubię to 1
Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.