nowe zasady dotyczące cookies

W naszym serwisie wykorzystujemy pliki „cookies”. Używamy ich, aby wyświetlić Ci treści, które są dla Ciebie naistotniejsze.
Pliki te zapewniają optymalne działanie serwisu, jeśli jednak zechcesz zrezygnować z ich używania, możesz to zrobić w kazdej chwili.

dowiedz się więcej...
pl en

Forum :: Seomatik.pl

Potrzebujesz pomocy? Sprawdź może ktoś miał podobny problem, skorzystaj z wyszukiwarki.

Forum Seomatik.pl :: Propozycje zmian
Wyświetlanie linków w tekście, sidebarze i stopce - Wordpress

Użytkownik / data Treść wątku
Dodano: 02-10-2012 11:09

Autor: rbrt
Zarejestrowany: 14-10-2009
Postów: 2
Witam,
chciałem podzielić się modyfikacjami plików Wordpressa pozwalającymi na wyświetlanie linków w tekście posta, pod podsumowaniami postów, w sidebarze i footerze. Po zmodyfikowaniu nie trzeba edytować za każdym razem templatek, ponieważ zmieniamy główne pliki Wordpressa. Modyfikacja trwa max 5 minut.

Jak to działa?
- Na stronie głównej w kategoriach i archiwach linki wyświetlane są za streszczeniami postów (w funkcji the_excerpt()). Jeśli jest za mało postów, to linki wyświetlane są w sidebarze i stopce.
- Na stronach pojedynczych postów linki wyświetlane są w tekście (w funkcji the_content()). Można zmodyfikować po których z kolei zdaniach (kropkach) wyświetlany będzie link i ile będzie ich wyświetlanych. Jeśli np. 1 link w tekście, to reszta będzie w sidebarze i stopce.


plik: /index.php

/* ładowanie linków z seomatika lub gotlinka do tablicy swl[]. Jeśli nie jest załadowany seomatik, a jest gotlink, to załaduje się gotlink :). */
$swl_i=0;

 @require_once($_SERVER["DOCUMENT_ROOT"]."/{UNIKALNANAZWAPLIKUseomatik}.php");
 @require_once($_SERVER["DOCUMENT_ROOT"]."/{UNIKALNANAZWAPLIKUgotlink}.php");
 
 $seomatik = new Seomatik();
 $seomatik->setSeparator("||");   // ustawienie separatora linków
 $seomatik->setTarget(true);          // dodanie do każdego linku parametru target="_blank"
 $seomatik->setClass("klasa");        // dodanie do każdego linku klasy CSS, w tym przypadku "klasa"

$swl=explode('||',@$seomatik->show());


if($swl[0]=="")
	$swl=explode('||',@showGotlink());

if($swl[0]=='<a href="http://www.gotlink.pl/" title="Nie można czytać z pliku">GotLink.pl</a>')
	unset($swl[0]);



plik: /wp-includes/post-template.php

/* wyświetlanie linków pod streszczeniem postów w kategoriach, archiwach itp */

function the_excerpt() {
	echo apply_filters('the_excerpt', get_the_excerpt());

	global $swl_i;
	global $swl;

	echo $swl[$swl_i];
	$swl_i++;

}



plik: /wp-includes/post-template.php


/* wyświetlanie linków w treści posta po 1, 4, 8 i 11 zdaniu */

function the_content($more_link_text = null, $stripteaser = 0) {
	$content = get_the_content($more_link_text, $stripteaser);
	$content = apply_filters('the_content', $content);
	$content = str_replace(']]>', ']]&gt;', $content);

	global $swl;
	global $swl_i;
	if(!is_category()&&!is_home()&&!is_archive())
	{
		$content = explode('.', $content);

		$content[1] = $content[1].' '.$swl[$swl_i].' ';
		$swl_i++;

		$content[4] = $content[4].' '.$swl[$swl_i].' ';
		$swl_i++;

		$content[8] = $content[8].' '.$swl[$swl_i].' ';
		$swl_i++;
		
		$content[11] = $content[11].' '.$swl[$swl_i].' ';
		$swl_i++;

		$content = implode('.',$content);
	}

	echo $content.' '.$swl[$swl_i];
	$swl_i++;
}



plik: /wp-includes/general-template.php

/* link przed sidebarem */

function get_sidebar( $name = null ) {


	do_action( 'get_sidebar', $name );

	$templates = array();
	if ( isset($name) )
		$templates[] = "sidebar-{$name}.php";

	$templates[] = "sidebar.php";

	// Backward compat code will be removed in a future release
	if ('' == locate_template($templates, true))
		load_template( ABSPATH . WPINC . '/theme-compat/sidebar.php');

	global $swl_i;
	global $swl;

	if($swl[$swl_i])
	{
  		echo $swl[$swl_i].'<br />';
		$swl_i++;
	}

}



plik: /wp-includes/general-template.php

/* wyświetlanie linków w stopce, jeśli nie zostały jeszcze wyświetlone w innych miejscach */

function get_footer( $name = null ) {
	global $swl_i;
	global $swl;
	while($swl[$swl_i])
	{
		echo $swl[$swl_i].'&nbsp;';
		$swl_i++;
	}

	do_action( 'get_footer', $name );
	$templates = array();
	if ( isset($name) )
		$templates[] = "footer-{$name}.php";

	$templates[] = "footer.php";

	// Backward compat code will be removed in a future release
	if ('' == locate_template($templates, true))
		load_template( ABSPATH . WPINC . '/theme-compat/footer.php');
}
Dodano: 02-10-2012 11:47

Autor: nfpeel
Zarejestrowany: 10-11-2009
Postów: 21
Dzięki, ale przy updacie Wordpressa wszystko szlag trafi. Trzeba to wrzucić jako wtyczkę, wtedy powinno być ok zawsze.
Dodano: 02-10-2012 22:55

Autor: usunięty
Good point. A teraz z apdejtami wszyscy szaleją. Z WP jest tak samo. Jeden up goni drugiego.
Dodano: 03-10-2012 14:44

Autor: sttorm
Zarejestrowany: 17-09-2009
Postów: 106
http://www.promolabs.pl/blog/widget-wordpress-do-publikacji-linkow-seomatik-w-sidebarze/

tu jest jako linki w sidebarze
Dodano: 17-02-2014 18:16

Autor: nafri
Zarejestrowany: 08-05-2011
Postów: 13
Potrzebuję pomocy... u mnie widget powoduje, że jednocześnie wyświetlają się linki w sidebarze i stopce. Co robię źle?
Dodano: 20-02-2014 14:13

Autor: sttorm
Zarejestrowany: 17-09-2009
Postów: 106
z której opcji wyswietlania linków korzystasz?

a nie amsz kodu wklejonego rowniez w pliku footer templatki

aha i jesli skorzystales z przykładu powyzej i wkleiłes we wszytskich miejscach co sa tam napisane - wyswietli sie w tych wszytskich miejscach

musisz wybrac gdzie chcesz meic aby linki ci sie wyswietlały
Dodano: 21-02-2014 19:46

Autor: nafri
Zarejestrowany: 08-05-2011
Postów: 13
Używam Pluginu z http://www.promolabs.pl/blog/widget-wordpress-do-publikacji-linkow-seomatik-w-sidebarze/
Dodałem go w widgetach i nigdzie indziej nie dodawałem kodu w templatce
Może to kwestia WP mam Wersje 3.8.1 ...
Dodano: 22-02-2014 13:34

Autor: sttorm
Zarejestrowany: 17-09-2009
Postów: 106
a w widgetach gdzie dodałeś do jakiego sidebara nie znam tempaltki ale czesc widgetów moze wyswietlac sie z boku, góry czy temoplatce lub moga się dublowac

nafri sprawdzilem u mnie
wyswietla sie w sidebarze tam gdzie chce, w miejscu i położeniu i tylko raz

a nie miałeś kody wcześniej wklejonego w pliku foter templatki
Dodano: 24-02-2014 20:31

Autor: nafri
Zarejestrowany: 08-05-2011
Postów: 13
@sttorm
nie mam nigdzie wklejonego kodu, jak możesz proszę odezwij się na GG: 5309
Dodano: 25-02-2014 14:54

Autor: sttorm
Zarejestrowany: 17-09-2009
Postów: 106
odezwałem ci sie na GG
Dodano: 25-02-2014 15:57

Autor: nafri
Zarejestrowany: 08-05-2011
Postów: 13
WIELKIE dzięki za pomoc,
sttorm zerknął w panel i wyłapał co było problem - problem już rozwiany
Dodano: 26-02-2014 11:45

Autor: siudra
Zarejestrowany: 25-09-2009
Postów: 9
W czym problem? Widget czy skórka?
Dodano: 26-02-2014 18:43

Autor: sttorm
Zarejestrowany: 17-09-2009
Postów: 106
widgety

skopiowalo się do widgetu stopki

czasami taks ie dzieje ze jakis widget wskakuje lub klonuje sie

wtedy jak cos jest nei tak trzeba kazdy przejzec - czesc jest niewidoczna co jest w srodku
Aby móc pisać na forum należy się zalogować.
1