Ingen sidebar på vissa sidor

06/15/2010

Jag hittade många instruktioner på nätet för hur man tar bort sidofältet från utvalda sidor på sin wordpressblogg, men ingen av dessa metoder funkade för mitt tema. Anledningen till detta är att koden som åkallar sidofältet i Intrepidity finns inbäddad i sidfoten. Också en del andra sektioners finns i sidfoten, så det dög inte att ta bort den helt och hållet heller.

Vad jag ville ha var en sida för bildgalleri fri från sidofält, så att mina bilder skulle kunna visas så stort som möjligt.

Här är instruktionerna för hur jag gjorde. Det kräver så vitt jag vet FTP-åtkomst. Alla stilar i exemplet nedan bör naturligtvis ändras så att de passar era övriga stilar:

Gallerimall

Skapa först en ny php-fil kallad gallery.php. Det går att skapa filen i en vanlig textredigerare. Kopiera in koden från temats egen page.php i den, spara och ladda upp den där du har WordPress installerat. Hädanefter går det att göra redigeringarna inifrån wp-admin på din sida.

I redigeraren (wp-admin/utseende/redigerare); öppna header.php och klipp ut:

<div id="container">

<div id="container-shoulder">

<div id="left-col">

Dessa bör flyttas till raden efter <?php get_header(); ?> i alla olika sidmallar förutom den nya gallery.php, alltså alla mallar där sidhuvud, sidofält och sidfot skall visas. Glöm inte obskyra sidmallar som 404.php, archive.php, osv. Skriv inte in några avslutande taggar för dessa, eftersom det redan finns i sidfoten.

Gå nu till gallery.php och klistra in <div id="gallery-container"> på samma ställe. Gå sedan till style.css och klistra in:

#gallery-container {width: 900px; background: #ffffff; }

#gallery-container .page {padding: 20px 0 12px 30px }

#gallery-container .page h2 {font-size: 22px; padding:14px 20px 0 0 }

någonstans i stilmallen.

Sök upp <div class="page-content"> i gallery.php och ersätt med <div class="gallery-content">. Gå till styles.css och lägg till

.gallery-content {background: #ffffff url(images/dots.gif) repeat-x 0 top; margin:4px 0 0 0; padding:12px 0 0 0; width: 840px}

Ny sidfot

Sedan är det dags att skapa en alternativ sidfot, som inte åkallar sidofältet, för galleriet. Jag gjorde en helt ny sidfot, genom att skapa en div id kallad gallery-footer och styla den med CSS, på samma sätt som med gallery-container ovan. Men eftersom det bara gäller en sidmall i det här fallet så tycker jag att det går bra att skriva hela koden direkt i gallery.php.

Börja med att ta bort <?php get_footer(); ?> som ligger sist i gallery.php. Kopiera hela innehållet i footer.php och klistra in i slutet av gallery.php. Ta sedan bort:

</div><!--End left-col-->

<?php get_sidebar(1); ?>

</div><!-- #container-shoulder -->

Lämna </div><!-- #Container--> för att avsluta <div id="gallery-container">.

Bildbilagor

Jag använde också det här för att skapa en bättre mall för mina bildbilagor, men det krävde lite ytterligare trix så det återkommer jag med en annan gång.

Det finns 8 kommentarer om den här artikeln:

  1. 07/14/2010Ryan England säger:

    Wow, your directions were so quick and easy. Thank you very much. Coding scares me, but your guide was exactly what I was looking for. Thank you.

  2. 07/14/2010Ryan England säger:

    # Gallery-container (width: 900px; background: # fff;) My background was clear until I change it to #ffffff . Just in case anyone else runs into that problem. Thanks again.

  3. 07/14/2010Pontus säger:

    As Ryan here says, you should be careful to change the values inside the parentheses to something that suites your own style. I used my own values as an example here, and they may not always match the default Intrepidity theme, or the way you set it up yourself. Widths and lengths are sure to match if you haven’t changed them in other pages, but fonts and colors should be checked.

    Glad I could help out :)

  4. 06/25/2011andy säger:

    When i did this my entire page shifted and my sidebar is now located at bottom of my page.

    Help?

  5. 06/28/2011Pontus säger:

    I think that I might have forgot to mention that you should remove ”< ?php get_footer(); ?>” from the gallery.php file before adding the new footer code. The instructions have been updated with this essential part.

  6. 06/29/2011andy säger:

    Thanks for this tip but it still didn’t work. I have the same issue with the sidebar ending up at the bottom of the page :(

  7. 06/29/2011Pontus säger:

    Then you must somehow have done it wrong, I think. You see, the line ”< ?php get_sidebar(1); ?>” is what brings the sidebar into a page. If you don’t have that in the code, there can be no sidebar.

  8. 06/29/2011Pontus säger:

    I edited the instructions to be more clear on what to do.

Skriv en kommentar: