Skocz do zawartości

Zdjęcie
* * * * * 1 głosy

WordPress - Tworzenie szablonów


34 odpowiedzi w tym temacie
  • Zaloguj się, aby dodać odpowiedź
wolfdz

    Stary wyjadacz

  • PipPipPip
  • 252 postów
    • Czas spędzony online: 10d 19m 41s
14
Dobra
  • LocationKraśnik

Napisano 05 lipca 2014 - 18:41

#1
Witajcie! 
Mam takie pytanie, czy wszystkie elementy szablonu wordpress muszą być zarządzanie przez kokpit czy jednak są pewne elementy, które można edytować w pliku .php? Pytam się bo zastanawia mnie to jak są tworzone szablony gdzie jest miejsce z głównymi newsami oraz np. wyżej czy niżej tego są jakieś boxy z inną informacją. Przykładem jest GRAM.pl, widzimy po lewej główne newsy a po prawej oraz wyżej jakieś dodatkowe pola. Jak to jest zrobione dokładnie?

  • 0

testerius

    Użytkownik

  • 77 postów
    • Czas spędzony online: 2d 8h 52m 2s
6
Neutralna

Napisano 05 lipca 2014 - 19:02

#2

Strzelam, że sidebary - ja tak zrobiłem w moim pierwszym szablonie, którym aktualnie się zajmuje od jakiegoś czasu. Później w taki sidebar możesz wrzucić np. widget dowolnego tekstu i wpisać sobie co tam chcesz. ;)


  • 0

writen

    Stary wyjadacz

  • 458 postów
    • Czas spędzony online: 29d 22h 59m 44s
133
Znakomita!

Napisano 05 lipca 2014 - 19:10

#3

Wszystko możesz edytować.

 

Otwórz pierwszy lepszy plik szablonu wordpressa i zobacz jak to jest zrobione.


  • 0

logo-green-dark.png


Michał

    Stary wyjadacz

  • 301 postów
    • Czas spędzony online: 16d 7h 11m 3s
95
Znakomita!

Napisano 05 lipca 2014 - 19:14

#4

Możesz edytować każdy element szablonu, wykorzystywać w nim funkcje wordpress'a, wbudowane w PHP, jak i zdefiniowane przez siebie, tworzyć zmienne itp. innymi słowy nie ma jako takich ograniczeń.

 

Tworzysz plik sidebar.php a następnie inkludujesz go funkcją get_sidebar()


  • 1

wolfdz

    Stary wyjadacz

  • PipPipPip
  • 252 postów
    • Czas spędzony online: 10d 19m 41s
14
Dobra
  • LocationKraśnik

Napisano 05 lipca 2014 - 19:28

#5

No tak, ale mi bardziej chodziło o to czy treść tych boxów (sidebara) może być edytowana tylko z poziomu pliku czy jednak takie szabloniki posiadają możliwość zarządzania tymi obszarami przez kokpit.Bo wiem, że ten główny content gdzie newsy się wyświetlaja, nagłówek jak i sidebar (boczny - domyślny) można z poziomu kokpitu zmienić, zaś ja chce wiedzieć czy dobrze będzie wyglądać (od strony technicznej) jeżeli dodatkowe elementy będą możliwe tylko przez plik być edytowane.

 

Nadal nie wie czy jasno pisze xd


  • 0

writen

    Stary wyjadacz

  • 458 postów
    • Czas spędzony online: 29d 22h 59m 44s
133
Znakomita!

Napisano 05 lipca 2014 - 21:25

#6

To zależy czy tworzysz szablon dla siebie czy zamierzasz go udostępnić lub sprzedać.

Jeśli to drugie to radziłby, żeby wszystko było sterowane przez kokpit.

W wordpressie nie ma problemu ze stworzeniem wielu takich boxów, w których będą wyświetlały się różne widgety.

Można też zrobić własne widgety.

Za wszystkie dodatkowe funkcje odpowiada plik szablonu functions.php 

Możesz tam nawet zdefiniować niestandardowe pola wpisów. A nawet własne typy wpisów (nie mówię o tych standardowych).

 

Możliwości jest taka masa, że ciężko to wszystko wymienić.

 

Możesz powiedzieć co chcesz konkretnie zrobić. Ja się postaram pomóc.


  • 0

logo-green-dark.png


unbreak

    WT Elite

  • 1 937 postów
    • Czas spędzony online: 27d 8h 43m 36s
506
Znakomita!
  • Location/home/unbreak

Napisano 07 lipca 2014 - 08:11

#7

Szablony WP robi się tylko i wyłącznie poprzez edycję plików php/css/js, a nie przez jakieś edytory w panelu.

Tworzysz nowy katalog, do niego wrzucasz nowy plik style.css w którym nadajesz nazwę i inne parametry szablonowi, później tworzysz index.php i zaczyna się jazda :)


  • 0

webDeveloper


zonic

    WT Elite

  • 2 911 postów
    • Czas spędzony online: 134d 2h 28m 23s
472
Znakomita!
  • LocationToruń

Napisano 07 lipca 2014 - 08:41

#8

Szablony WP robi się tylko i wyłącznie poprzez edycję plików php/css/js, a nie przez jakieś edytory w panelu.

Tworzysz nowy katalog, do niego wrzucasz nowy plik style.css w którym nadajesz nazwę i inne parametry szablonowi, później tworzysz index.php i zaczyna się jazda :)

Tutaj raczej nie było problemu z tym jak tworzyć szablon, tylko jak zarządzać jego treścią :) Nie wyobrażam sobie zarządzać treścią sidebarów z poziomu plików, a raczej o to pytał autor tematu.


  • 0

vms

    Użytkownik

  • 81 postów
    • Czas spędzony online: 5h 33m 5s
28
Bardzo dobra

Napisano 08 lipca 2014 - 08:16

#9

Myślę że problem leży w odmiennym rozumieniu słowa 'szablon'. Ja zgadzam się z @unbreak szablon to tylko pliki php/css/js reszta to treść. Teoretycznie posiadając na stronie slider, po zmianie szablonu slider powinien dalej być na stronie, bo slider jest treścią/zawartością.

To samo dotyczy zawartości sidebara, powinna być niezależna od szablonu :)


  • 0

zonic

    WT Elite

  • 2 911 postów
    • Czas spędzony online: 134d 2h 28m 23s
472
Znakomita!
  • LocationToruń

Napisano 08 lipca 2014 - 08:22

#10


To samo dotyczy zawartości sidebara, powinna być niezależna od szablonu


No ok, zgadzam się z tym. Ale patrz poniżej o co autor pyta:


No tak, ale mi bardziej chodziło o to czy treść tych boxów (sidebara) może być edytowana tylko z poziomu pliku czy jednak takie szabloniki posiadają możliwość zarządzania tymi obszarami przez kokpit.



Czyli autor rozważa opcję zrobienia pseudo sidebara na sztywno, gdzie jedyną możliwością edycji byłaby edycja pliku bez  pośrednictwa panelu, co jest absolutną bzdurą imo :)


PS: Dla kogoś, kto chce  stworzyć fajny szablon WP przydatne linki (moim zdaniem):

http://codecanyon.ne...1?ref=mateosite
http://codecanyon.ne...9?ref=mateosite
  • 0

Zimistrz

    Stary wyjadacz

  • 465 postów
    • Czas spędzony online: 14d 2h 42m 38s
116
Znakomita!

Napisano 08 lipca 2014 - 08:53

#11

Zonic: idąc w tym kierunku lepszym do wyklikiwania byłby jakiś zestaw szablonów z własnym frameworkiem.

Choć jest tego opór - jak do każdego popularnego CMS-a - to bodaj thesis jest dość popularny do WP.

Tylko cena może być zaporowa.


  • 0

unbreak

    WT Elite

  • 1 937 postów
    • Czas spędzony online: 27d 8h 43m 36s
506
Znakomita!
  • Location/home/unbreak

Napisano 08 lipca 2014 - 09:23

#12

Niekoniecznie bzdurą. A jak wygląda sprawa np ze stopkami w szablonach (copy, szablon by, etc) :D Nie chcemy żeby ktos miał możliwość edycji tego z poziomu panelu, prawda? :P


  • 0

webDeveloper


zonic

    WT Elite

  • 2 911 postów
    • Czas spędzony online: 134d 2h 28m 23s
472
Znakomita!
  • LocationToruń

Napisano 08 lipca 2014 - 10:06

#13

Niekoniecznie bzdurą. A jak wygląda sprawa np ze stopkami w szablonach (copy, szablon by, etc) :D Nie chcemy żeby ktos miał możliwość edycji tego z poziomu panelu, prawda? :P

Ale mówimy o contencie :) Owszem, znajdą się szczególne przypadku, ale sądzę, że w tym temacie generalizujemy :)

Ja ten temat rozumiem tak: "Autor chce stworzyć szablon na WP, ale nie bardzo ogarnia i pyta się, czy jak walnie na sztywno wszystko poza newsami, to będzie bardzo źle" :)

Moja odpowiedź brzmi, że będzie źle. No chyba, że z czasem to poprawisz. 


  • 0

writen

    Stary wyjadacz

  • 458 postów
    • Czas spędzony online: 29d 22h 59m 44s
133
Znakomita!

Napisano 08 lipca 2014 - 10:45

#14

A moim zdaniem nie będzie źle, o ile szablon robi sobie do użytku prywatnego na własną stronę.
Wbrew pozorom zmiana czegoś w plikach szablonu nie jest bardzo czasochłonna. Wystarczy w kokpicie kliknąć Wygląd -> Theme Editor. I tam to się edytuje.
 
Nie mniej jednak polecam zaopatrzyć szablon w dynamiczne sidebary, w których będą wyświetlać się widgety.
 
 

 
A więc jeśli robimy własny szablon to musimy stworzyć taki sidebar w pliku functions.php za pomocą kodu:

if (function_exists('register_sidebar')) {
    	register_sidebar(array(
    		'name' => 'Sidebar Widgets',
    		'id'   => 'sidebar-widgets',
    		'description'   => 'These are widgets for the sidebar.',
    		'before_widget' => '<div id="%1$s" class="widget %2$s">',
    		'after_widget'  => '</div>',
    		'before_title'  => '<h2>',
    		'after_title'   => '</h2>'
    	));
    }

Następnie w pliku szablonu musimy wywołać funkcję wyświetlającą nasz sidebar:

dynamic_sidebar('Sidebar Widgets')

A jeśli chcemy więcej różnych sidebarów na stronie wystarczy powielić funkcję register_sidebar() w pliku functions.php. Oczywiście zmieniając nazwę i id. Oraz ponownie wywołać gdzieś funkcję dynamic_sidebar(), w której parametrze podajemy zmienioną nazwę.

 

Dziękuję za uwagę


  • 0

logo-green-dark.png


wolfdz

    Stary wyjadacz

  • PipPipPip
  • 252 postów
    • Czas spędzony online: 10d 19m 41s
14
Dobra
  • LocationKraśnik

Napisano 19 lipca 2014 - 00:42

#15

Nie było mnie trochę, dłuuugo czasu zbierałem się do tego aż w końcu powiedziałem sobie, że chyba czas zacząć. Przecież mnie to nie ominie. Przeglądając poradniki na pierwszych stronach google, które mówią jak tworzyć kod pod swoją pierwszą skórkę natrafiam na czysty html i jedynie w niektórych miejscach jest dodany php wordpressa, zaś po otworzeniu index.php domyślnej skórki kod wygląda całkiem inaczej. To mnie najbardziej przeraża. Otóż moja znajomość php ogranicza się do tego, że znam składnie, stałe i zmienne ( XD ) i tworzenie własnej skórki może być trudne aczkolwiek niewykonalne. Od razu z góry po proszę (jeżeli macie) jakieś strony, poradniki gdzie dokładnie jest objaśniona metoda tworzenia szablonów, poradnik od a-z.


  • 0

writen

    Stary wyjadacz

  • 458 postów
    • Czas spędzony online: 29d 22h 59m 44s
133
Znakomita!

Napisano 19 lipca 2014 - 01:06

#16
Hmm. Ja korzystam z dokumentacji wordpressa. No ale do tego jest potrzebna znajomosc php.
Niemniej jednak na stronie ktora przegladales z pewnoscia byly opisane funkcje ktore nalezy wstawic do szablonu aby wyswietlic poszczegolne elementy.

Wysłane z mojego LG-E400
  • 0

logo-green-dark.png


wolfdz

    Stary wyjadacz

  • PipPipPip
  • 252 postów
    • Czas spędzony online: 10d 19m 41s
14
Dobra
  • LocationKraśnik

Napisano 19 lipca 2014 - 09:40

#17

No te podstawowe były jak napisałem wcześniej, ale porównać szablon, który ładuje newsy a ten z domyślnego stylu to jednak się różni.

Poradnik:

<?php get_header(); ?>
    <div id="container_page">
        <div id="content_page">
            <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
                <div class="entry">
                <h1><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h1>
                <p class="entry-date"><?php the_time('d-m-Y'); ?></p>
                    <a href="<?php the_permalink(); ?>">
                        <?php if ( has_post_thumbnail() ) { the_post_thumbnail( 'single-post', array('class' => 'entry-thumb') ); } ?>
                    </a>
                    <?php the_content('czytaj dalej'); ?>
                        <div class="clear"></div>
                </div>
                    <?php endwhile; else: ?>
                    <p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
                <?php endif; ?>
        </div>
<?php get_footer(); ?>

Domyślna skórka:

<?php
/**
 * The default template for displaying content
 *
 * Used for both single and index/archive/search.
 *
 * @package WordPress
 * @subpackage Twenty_Fourteen
 * @since Twenty Fourteen 1.0
 */
?>

<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
	<?php twentyfourteen_post_thumbnail(); ?>

	<header class="entry-header">
		<?php if ( in_array( 'category', get_object_taxonomies( get_post_type() ) ) && twentyfourteen_categorized_blog() ) : ?>
		<div class="entry-meta">
			<span class="cat-links"><?php echo get_the_category_list( _x( ', ', 'Used between list items, there is a space after the comma.', 'twentyfourteen' ) ); ?></span>
		</div>
		<?php
			endif;

			if ( is_single() ) :
				the_title( '<h1 class="entry-title">', '</h1>' );
			else :
				the_title( '<h1 class="entry-title"><a href="' . esc_url( get_permalink() ) . '" rel="bookmark">', '</a></h1>' );
			endif;
		?>

		<div class="entry-meta">
			<?php
				if ( 'post' == get_post_type() )
					twentyfourteen_posted_on();

				if ( ! post_password_required() && ( comments_open() || get_comments_number() ) ) :
			?>
			<span class="comments-link"><?php comments_popup_link( __( 'Leave a comment', 'twentyfourteen' ), __( '1 Comment', 'twentyfourteen' ), __( '% Comments', 'twentyfourteen' ) ); ?></span>
			<?php
				endif;

				edit_post_link( __( 'Edit', 'twentyfourteen' ), '<span class="edit-link">', '</span>' );
			?>
		</div>
	</header>

	<?php if ( is_search() ) : ?>
	<div class="entry-summary">
		<?php the_excerpt(); ?>
	</div>
	<?php else : ?>
	<div class="entry-content">
		<?php
			the_content( __( 'Continue reading <span class="meta-nav">&rarr;</span>', 'twentyfourteen' ) );
			wp_link_pages( array(
				'before'      => '<div class="page-links"><span class="page-links-title">' . __( 'Pages:', 'twentyfourteen' ) . '</span>',
				'after'       => '</div>',
				'link_before' => '<span>',
				'link_after'  => '</span>',
			) );
		?>
	</div>
	<?php endif; ?>

	<?php the_tags( '<footer class="entry-meta"><span class="tag-links">', '', '</span></footer>' ); ?>
</article>

Zapewne sam coś zrozumie, jednak potrzebuje dokładnego objaśnienia poszczególnych linijek kodu. Jest on ładowany do page.php, ale na razie mnie to nie interesuje.


  • 0

writen

    Stary wyjadacz

  • 458 postów
    • Czas spędzony online: 29d 22h 59m 44s
133
Znakomita!

Napisano 19 lipca 2014 - 09:46

#18
Nie moge ci teraz opiac tych funkcji.
Ale jak wpiszesz ich nazwy w google dodajac slowko wordpress to powinna wyswietlic sie masa opisow.

Wysłane z mojego LG-E400
  • 0

logo-green-dark.png


unbreak

    WT Elite

  • 1 937 postów
    • Czas spędzony online: 27d 8h 43m 36s
506
Znakomita!
  • Location/home/unbreak

Napisano 21 lipca 2014 - 08:05

#19

Prawda jest taka że te domyślne skórki są do wszystkiego, dlatego w nich jest tak dużo. Jeżeli skórkę robisz pod siebie, do własnego użytku, a nie żeby upublicznić, to możesz śmiało upraszczać ten kod jak się tylko da. Ostatnio dla klienta robiłem prostą stronkę na WP i theme 'mieścił' się w 2 / 3 plikach php (z czego jeden główny index.php, drugi to includowany header.php a ostatni to pliczek wyświetlający listę lub pojedyncze posty, do tego css, js i obrazki :)

 

Całość była prosta i przejrzysta :) Jeżeli znasz składnie, zmienne i stałe w php to imo wystarczy dla własnej skórki, do tego sięgaj tutaj: http://codex.wordpress.org/ gdzie opisane są wszystkie funkcje i zmienne WP i dasz radę.

 

EDIT: no chyba że planujesz dodawać jakieś funkcjonalności których nie ma WP, lub rozbudowywać bardziej te które już posiada, no to będzie Ci trudniej ;)


Użytkownik unbreak edytował ten post 21 lipca 2014 - 08:06

  • 1

webDeveloper


wolfdz

    Stary wyjadacz

  • PipPipPip
  • 252 postów
    • Czas spędzony online: 10d 19m 41s
14
Dobra
  • LocationKraśnik

Napisano 21 lipca 2014 - 12:52

#20

Czy chce tworzyć rozbudowane dodatki? Raczej nie, chyba, że jakieś dodatkowe pola/miejsca na wpisy niż ten główny content co jest w podstawowych szablonach WP oraz slider, ale raczej to drugie jest na internecie albo chociaż w darmowych szablonach zawszę można zerknąć. Czyli dobry szablon do WP nie musi posiadać pierdylion plików php?


  • 0





Podone tematy Collapse

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych