Mycke dataprogrammering, idag också…

sömn; ok. Fast jag kände mig väldigt seg på morgonen. Har inte tagit några läkemedel alls på ett par dagar nu – det känns.

Farsan
Ringde han. Han hade precis ätit och var på väg upp i sängen. Jag tycket han lät ynklig…
Idag var kommentaren: "Det går sin gilla gång…". Det är är en bra bit under 'må-nivån': "Det knallar å går."

Fixat och ordnat lite med fars ekonomiska papper – ordning och reda!

Promenad
Hustrun fick faktiskt ut mig på en promenad trots isande snålblåst och lite råkyla.

LEGO
Fick en legodetalj, ett vitt 40-kuggars kugghjul, idag. Jag beställde det den 3:e januari…

Bloggtrixande
Idag har jag härjat massor med min experimentblogg. I rutan nedan kan den eventuellt intresserade följa min s.k. arbetsgång 'workflow', ska det visst heta…:

Arbeta med '<div>':ar
id	Förekommer bara en enda gång i ett HTML-dokument	- prefix i styledefinitionen: '#'
class	Kan användas flera gånger 				- prefix i styledefinitionen: '.'

I understand that the specificity for the id vs. class selector is based on a left-reading scale. The farther left your selector appears the less specific it is.
For example:
p{color:red;} 			has 0,0,0,1 (just an element)
.red{color:red;} 		has 0,0,1,0 (just a class)
#content p.red{color:red;}	has 0,1,1,1 (an element, class and id)
<inline style tag> 		has 1,0,0,0 (and trumps all specificity of CSS.)
I find this useful to think about while writing my messy, messy code, so I thought I'd pass it along.

Great job of keeping it simple Ivan. A few other interesting css tidbits about id and class assignment for beginners:
* You can specify only elements inside specific elements in the css by putting a space between the selectors. 
  For example: 
  #bigbox .foo {font-weight:bold;} 
  will make any element with class="foo" inside an element with id="bigbox" bold.
* You can assign multiple classes to html element by seperating them with spaces. 
  For example: 
  <p class="foo bluefoo">This Paragraph</p> 
  would get whatever css styles you've assigned in the css for both .foo and .bluefoo.
* Finally, assign a set of css rules to multiple selectors by seperating them in the css with commas: 
  For example: 
  html, strong, li, #foobar, .cheese {font-family:"comic sans";} 
  This would apply the font, comic sans, to each of the listed selectors. Please don't do this. :)

<div>
</div>

----------------
Hur ska min blogg organiseras?

Finns det standardID som bör finnas?
Finns det standardKlasser som bör finnas?

Jag testar först med antagandet; Nej.
Jag håller mig till engelska dels att man då slipper krånglet med åäö, vika inte funkar i all form av kodning. Dels att, blir det bra, så kanske temat kan publiceras.
De viktigaste;
Hela sidan:			id="thepage"
Sidhuvudet: 			id="thehead"
Flikarna:			id="thetabs"
HTML-sidans kropp (body):	Samma som 'thepage' (inga 'div':ar ovanför taggen: 'body')
Vänster sidolist (meny):	id="theleftsidebar"
Höger sidolist (meny):		id="therightsidebar"
Området uppe till höger som innehåller frågorna (widgetcontainer):
				id="thetopright"
Inläggen / posterna / 'loopen':	id="theloop"
Respektive inlägg / post:	class="thepost"
Respektive inlägg / post, huvud:class="theposthead"
Respektive inlägg / post, text (content = innehåll):
				class="theposttext"
Respektive inlägg / post, s.k. metadata (kategorier, ettiketter):
				class="thepostmeta"
Respektive inlägg / post, 'fot':class="thepostfoot"
Navigeringsdelen, om det finns flera poster så kan man visa länk till föregående respektive efterkommande (nedanför loopen men tillhör den likväl):
				class="thenavigation"
Sidfoten:			id="thefoot"


Hur ser namngivnigen (id) ut för andra teman och då för 'the loop'?
temat: 
WordPress Default: 	ID=content
WordPress Classic:	Inget alls
Twenty Ten:		ID=content samt en 'div' som omsluter den: ID=container
NGN-WP:			Ingen Specifik

-----------------
Till 'verkligheten';
I filen style.css definierar jag identiteter och klasser (jag sätter inga värden, än.):

/* START: placering på sidan och färger [typography and colors] */
/* Sidfoten [Foot] id */
#thepage {} 

/* Sidhuvudet [Head] id */
#thehead {}

/* Flikarna [Tabs] id */
#thetabs {}

/* Sidopanel (meny) [sidebar (menu)] id */
#sidebar {}

/* Sidopanel 2 (meny) [sidebar 2 (menu)] id */
#the2sidebar {}

/* Området uppe till höger som innehåller frågorna (widgetcontainer) [the most topright area inside the head] id */
#thetopright {}

/* Inläggen / posterna / 'loopen' [the loop] id */
#theloop {}

/* Respektive inlägg / post [the single post] klass [class] */
.thepost {}

/* Respektive inlägg / post, huvud [the single post head] klass [class] */
.theposthead {}

/* Respektive inlägg / post, text (content = innehåll) [the single post conten] klass [class] */
.theposttext {}

/* Respektive inlägg / post, s.k. metadata (kategorier, ettiketter) [the single post meta] klass [class] */
.thepostmeta {}

/* Respektive inlägg / post, 'fot' [the single post foot] klass [class] */
.thepostfoot {}

 /* Navigeringsdelen, om det finns flera poster så kan man visa länk till föregående respektive efterkommande (nedanför loopen men tillhör den likväl) [the navigation part below the loop] klass [class] */
.thenavigation {}

/* Sidfoten [foot] id */
#thefoot {}

/* SLUT: placering på sidan och färger [END: typography and colors] */

Ovan inklistrat i style.css 110126.
Kör en validiering: >>: 56 fel och en varning!? Phu! De har å göra med inläggen, allihopa.
(I förbifarten noterade jag att blogg.ngn.nu har 4 fel?) De berodde också på ett misstag, av mig, när jag skapade ett inlägg med [Visa mer...]. Men egentligen inte.
Det var WordPress admin editor som lade till taggen 'p', där jag inte ville ha den...)

Kan vara bra att bli av med felen så blior det lättare att följa processen.

Nu är det 0 fel och bara en varning, vilken får jag dock inte veta...
Tog bort kod för pollen:
Original: "onclick="poll_result(%POLL_ID%); return false;" onkeypress="poll_result(%POLL_ID%); return false;" title="Visa resultat för den här analysen">Visa resultat</a></p></div>"
Ändrade till: "onclick="poll_result(%POLL_ID%);" onkeypress="poll_result(%POLL_ID%);" title="Visa resultat för den här analysen">Visa resultat</a></p></div>"
Validieringen gillande inte: "return false;" efter: "poll_result(%POLL_ID%);"
*****************
110127
Nu ska jag försöka mig på och styra upp placering av främst inläggen och sidolisterna
Först, grundfärgen för hela sidan: 
	background-color: #970A07;
Placeras i style.css, vid:
/* Hela sidan [page] id */
#thepage {} 

Så att det blir såhär:
/* Hela sidan [page] id */
#thepage {
	background-color: #970A07;
} 

För att nu få färgen att synas måste jag lägga in en 'div' i filen header.php och footer.php med id=thepage
I header plaseras:
<div id="thepage"> strax under HTML-taggen: 'body'
och jag skriver det såhär:
<div id="thepage" /* START */ > 

Sedan läger jag in sluttaggen i footer.php. Strax ovanför HTML-taggen: '/body'. Så här:

</div / END id thepage */ > 

Dags för test: >>: Inget... Validieringen gillar inte mitt sätt att lägga in kommentarer.

Jag ändrar från:
<div id="thepage" /* START */ > 
</div / END id thepage */ > 
till:
<div id="thepage" ><!-- START --> 
</div><!-- END id thepage -->

Ny test: >>: Inga fel men inget syns

Prövar med att ge attribut till HTML-taggen direkt. i style.css, så här:
body {
	background-color: #970A07;
}

Ny test: >>: Det tog skruv!
Antagligen hade jag ocks dirket i HTML-taggen: body satt samma sak genom att ha gett taggens parameter 'id' värdet 'thepage'.
Jag testar för att lära mig: >>: stämde bra.

Nu är frågan: Vilket är att föredra?
Jag väljer att placera 'styrningen i style.css. Det ger möjligheten att i enskilda (andra) taggar i sätta annat värde och det får då första prioritet.

Nu vill jag anpassa visningen av inläggen. Annan bakrundsfärg, smalare, i mitten, 'theloop': 
I style.css, lägger jag till:
/* Inläggen / posterna / 'loopen' [the loop] id */
#theloop {
	width:32%;
}

I index.php lägger jag in:
<div id="theloop"><!-- START -->
strax ofanför koden:
<?php if (have_posts()) : ?>

Och strax nedanför:
<?php endif; ?>
Lägger jag till:
</div><!-- id theloop END -->

Test: >>: Helt OK (kanske lite smalt men jag avvaktar lite med eventuella justeringar)

Nu sätter vi 'min' bakgrundsfärg för respektive inlägg (post).
Det gör jag först i style.css:
/* Respektive inlägg / post [the single post] klass [class] */
.thepost {
	background-color: #D1D197;
}

Sedan sätter vi en 'div' i index.php
Strax under koden:
<?php if (have_posts()) : ?>
Så här: <div class="thepost"><!-- START -->

Och strax nedanför koden:
<?php endwhile; ?>
Så här:
</div><!-- class thepost END -->

Test: >>: OK

Placera inläggen i mitten:
Lägger till två rader vid definitionen av 'theloop', så här:
/* Inläggen / posterna / 'loopen' [the loop] id */
#theloop {
	width:32%;
	margin-left:auto;
	margin-right:auto;
}

Test: >>: OK

Nu ska vi se om jag fixar att placera huvudsidopanelen, till vänster, om inläggen.
Först en 'container' för detta ändamål, en 'div'. Den är ju redan difinierad: 'sidebar'.
Nu käller det dock att få den placerad på rätt ställe med önskad bredd och bakgrundsfärg.
Bakgrundsfärg:
	background-color: #7A7649;
Positionen / placeringen:
	float:left;
	position:relative;
Bredd:
	width:15%;

Prövar med att placera allt i id=sidebar i filen style.css, så här:
/* Sidopanel (meny) [sidebar (menu)] id */
#sidebar {
	background-color: #7A7649;
	width:15%;
	float:left;
	position:relative;
}

Sedan ska den definitionen få effekt, det sätter jag i filen index.php, så här:
<div id="sidebar"><!-- START -->
	<?php get_sidebar(); ?>
</div><!-- id sidebar END -->

Test: >>: OK

Men jag vill ha den intill inläggen. Nu befinner den sig längst till vänster i fönstret.
Dags att sätta bredden på 'hela' bloggen. Av erfarenhet har jag märkt att det funkar väl om jag sätter bredden till 950px, statisk bredd. Med minsta bredd definierad till 800px
I stilfilen style.css blir det såhär:
/* Hela sidan [page] id */
#thepage {
	width:950px;
	min-width:800px;
	margin-left:auto;
	margin-right:auto;
}

Test: >>: OK

Fast nu få jag ändra lite breddvärden:
Inläggen:
Från: 32%
Till: 52%

Sidopanelen:
Från: 15%
Till: 22%

Test: >>: OK.

Nu vill jag skapa en höger sidopanel också så att jag lättare ska kunna finslipa på utseendet. Men före finslipande ska jag fixa till sidhuvudet. Det ska också delas in i tre s.k. kolumner. Tidigare har jag valt att göra det via en tabell nu ska jag använda 'div':ar.
Först, är den registrerad i functions.php? (så att man kan lägga in s.k. widgets i den).
Svar: Nej.
Då gör vi det, i filen functions.php lägger jag till, strax efter den första registreringen:
register_sidebar(array(
        'name' => 'the2sidebar',
        'before_widget' => '',
        'after_widget' => '',
        'before_title' => '',
        'after_title' => '',
    ));

För att det hela ska fungera så att man kan använda den till annat än att lägga s.k. widgets i så är det ytterst lämpligt att skapa en fil som heter: 
the2sidebar.php
Med innehållet, till att börja med:
// innehåll som man vill visa innan de s.k. widgets, den 2:a
<?php if ( !function_exists('dynamic_sidebar')
        || !dynamic_sidebar() ) : ?>
// standard sidomeny om inga widgets används
<?php endif; ?>
// innehåll som man vill visa efter de s.k. widgets, den 2:a

Den 2:a panel ska också få bakgrundsfärg, bredd och placering, i stilfiloen: style.css, så här:
/* Sidopanel 2 (meny) [sidebar 2 (menu)] id */
#the2sidebar {
	background-color: #7A7649;
	width:20%;
	float:right;
	position:relative;
}

I huvudmallen, index.php, 
Strax nedanför koden för den andra sidolisten:
<?php get_footer(); ?>
lägger jag in följande:
<div id="the2sidebar"><!-- START -->
	<?php include (TEMPLATEPATH . '/the2sidebar.php'); ?>
</div><!-- id the2sidebar END -->

Lägger in en s.k. widget i den för stt se så den dyker upp.

Test: >>: ok men 'fel' widget visades?

Vad kommer det sig?

Hade missat att tala om vilken sidopanel, med widgets, som skulle användas, i filen: the2sidebar.php
En kodrad såg ut såhär:
|| !dynamic_sidebar() ) : ?>
Den ska se ut såhär:
|| !dynamic_sidebar('the2sidebar') ) : ?>

Test: >>: OK.

Nu vill jag fixa till sidhuvudet.
Dela in den efter samma princip som 'bloggkroppen'.

Har redigerat filen style.css, den delen som jag valt att placera definitionerna av HTML -sidans övre del. Nu ser det ut såhär:
/* Fönsterhuvudet, rubrikdelen [window header part] id */
#thewindowhead {}

/* vänstra övre delen av fönstret [te left upper part of window] id */ 
#thetopleft {}

/* Mittendelen av fönsterhuvudet (rubrikdelen) [the middle part of window header part] id */
#thetopmiddle {}

/* Området uppe till höger som innehåller frågorna (widgetcontainer) [the most topright area inside the window] id */
#thetopright {}

För att inte röra till det för mycket i originalfilerna och dessutom göra det lättare att spåra fel så väljer jag att skapa en separat fil för detta:
ngn-hedaer.php
Och den fyller jag med, än så länge:
<H1><?php bloginfo( 'name' ); ?></H1>

Och i filen header.php, lägger skriver jag sist:
Jag tar bort raden:
<H1><?php bloginfo( 'name' ); ?></H1>
Och skriver i stället:
<div id="thewindowhead"><!-- START -->
	<?php include (TEMPLATEPATH . '/ngn-header.php'); ?>
</div><!-- id thewindowhead END -->

Test: >>: OK
[] Min bild i vänsterdelen
[] bloggnamnet i mitten
[] Pollen till höger

Registrerar över högra delem som s.k. widgetcontainer i filen fonctions.php:
register_sidebar(array(
        'name' => 'thetopright',
        'before_widget' => '',
        'after_widget' => '',
        'before_title' => '',
        'after_title' => '',
    ));

Har lagt in följande i filen, ngn-header.php:
<!-- vänstra övre delen av fönstret [the left upper part of window] -->
<div id="thetopleft"><!-- START -->
</div><!-- id thetopleft END -->

<!-- Mittendelen av fönsterhuvudet (rubrikdelen) [the middle part of window header part] -->
<div id="thetopmiddle"><!-- START -->
	<H1><?php bloginfo( 'name' ); ?></H1>
</div><!-- id thetopmiddle END -->

<!-- Området uppe till höger som innehåller frågorna (widgetcontainer) [the most topright area inside the window] id -->
<div id="thetopright"><!-- START -->
// innehåll som man vill visa innan de s.k. widgets, den 3:e
<?php if ( !function_exists('dynamic_sidebar')
        || !dynamic_sidebar('thetopright') ) : ?>
// standard sidomeny om inga widgets används
<?php endif; ?>
// innehåll som man vill visa efter de s.k. widgets, den 3:e
</div><!-- id thetopright END -->

Innan jag testar byter jag ut widget i panel 1.

Test: >>: OK

Nu ser aktuell del i style.css ut enligt nedan:
/* vänstra övre delen av fönstret [the left upper part of window] id */ 
#thetopleft {
	width:22%;
	float:left;
	position:relative;
}

/* Mittendelen av fönsterhuvudet (rubrikdelen) [the middle part of window header part] id */
#thetopmiddle {
	width:52%;
	margin-left:auto;
	margin-right:auto;
}

/* Området uppe till höger som innehåller frågorna (widgetcontainer) [the most topright area inside the window] id */
#thetopright {
	background-color: #D1D197;
	width:22%;
	float:right;
	position:relative;
}

Och ngn-header.php innehåller:
<!-- vänstra övre delen av fönstret [the left upper part of window] -->
<div id="thetopleft"><!-- START -->
	<p align='center'><img src='/images/Nisse_02(1).jpg' alt='Bild på bloggens författare' /></p>
	<p align='center'><font color='#FFFFFF'><b>Nisse</b></font></p>
</div><!-- id thetopleft END -->

<!-- Mittendelen av fönsterhuvudet (rubrikdelen) [the middle part of window header part] -->
<div id="thetopmiddle"><!-- START -->
	<H1><?php bloginfo( 'name' ); ?></H1>
</div><!-- id thetopmiddle END -->

<!-- Området uppe till höger som innehåller frågorna (widgetcontainer) [the most topright area inside the window] id -->
<div id="thetopright"><!-- START -->
	// innehåll som man vill visa innan de s.k. widgets, den 3:e
	<?php if ( !function_exists('dynamic_sidebar')
        	|| !dynamic_sidebar('thetopright') ) : ?>
	// standard sidomeny om inga widgets används
	<?php endif; ?>
	// innehåll som man vill visa efter de s.k. widgets, den 3:e
</div><!-- id thetopright END -->

Test: >>: intressant...
Får nog sätta höjd på 'thewindowhead'

Prövar med, i filen style.css:
/* Fönsterhuvudet, rubrikdelen [window header part] id */
#thewindowhead {
	min-height:300px;
}

Lite bättre. Ser om det fixar sig om jag breddar övre högra delen.
Det verkar kört att fixa det här via 'div':ar. Om t.ex. en s.k. förälder-div innehåller en barn-div, en 'ruta' i en 'ruta' så ökas inte höjden, per automatik på förälder-diven om barn-divens höjd ökas. Och det vill jag att det ska göra så jag får nog ta till HTML-taggen: 'table' och tillhörande; 'tr' & 'td'.
Enklast möjliga tabell, med en s.k. cell:
<table><tr><td></td></tr></table>

Jag prövar:
Jag fick till det riktigt bra men jag fick tänka om en hel del. Så här; skrev om aktuell del i style.css:
/* vänstra övre delen av fönstret [the left upper part of window] class */ 
.thetopleft-contanier {}

td.thetopleft-contanier{
	text-align:left;
	vertical-align:top;
}

.thetopleft {}

td.thetopleft{
	color:#FFFFFF;
	text-align:center;
	vertical-align:top;
}

/* Mittendelen av fönsterhuvudet (rubrikdelen) [the middle part of window header part] class */
.thetopmiddle {}

td.thetopmiddle{
	text-align:center;
}

/* Området uppe till höger som innehåller frågorna (widgetcontainer) [the most topright area inside the window] class */
.thetopright {
	background-color: #D1D197;
}

td.thetopright{
	width:35%;
}

Och filen ngn-header.php ser nu ut såhär:
<table><tr>
<td class="thetopleft-contanier"><table><tr>
<td class="thetopleft">
<!-- vänstra övre delen av fönstret [the left upper part of window] -->
	<p><img src='/images/Nisse_02(1).jpg' alt='Bild på bloggens författare' /></p>
	<p><b>Nisse</b></p>
</td>
</tr></table>
<td class="thetopmiddle">
<!-- Mittendelen av fönsterhuvudet (rubrikdelen) [the middle part of window header part] -->
	<H1><?php bloginfo( 'name' ); ?></H1>
</td>
<td class="thetopright">
<!-- Området uppe till höger som innehåller frågorna (widgetcontainer) [the most topright area inside the window] id -->
	// innehåll som man vill visa innan de s.k. widgets, den 3:e
	<?php if ( !function_exists('dynamic_sidebar')
        	|| !dynamic_sidebar('thetopright') ) : ?>
	// standard sidomeny om inga widgets används
	<?php endif; ?>
	// innehåll som man vill visa efter de s.k. widgets, den 3:e
</td></tr></table>

Jag känner mig nöjd med att arbeta enligt ovan och validieringen verkar ju gilla det också.
Eftersom det är så rackarns knepigt att få 'div':arna att lyda gör jag något liknande med bloggens kropp.
Nackdelen med det är att jag 'binder' sidopanelerna vid en fix position.
Men nu är jag ju konrvativ av mig, i den delen, så då får det bli så.

Det var rackarns vad det var knepigt. Fick problem med ett glapp över första 'posten'. Hittade till slut något som kallas 'Mayer's reset' och den sopade verkligen rent.
Ska bli intressant att sätta allt 'från början'...
Så'här ser filerna ut nu:
style.css:
/*
Theme Name: NGN-2011
Theme URI: http://ngn.nu/WP/NGN-2011
Description: Nisses egna hopsnickrade tema, med start 2011.
Author: Nils-Gunnar Nordlundh (NGN)
Author URI: https://blogg.ngn.nu
Version: 1.0 
Tags: två sidolister / two sidebars, fix bredd / fixed width, administrerbara favoritlänkar / custom links, administrerbara flikar / custom tabs

License: Open Source och / and Nils-Gunnar Nordlundh
License URI:

*/

/* Sätt 'allt' till 'noll' START [myers reset]*/
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* Sätt 'allt' till 'noll' END */


/* START: placering på sidan och färger [typography and colors] */
/* sätt värden till HTML-taggar [put some values to HTML-tags direktly] START */
body {
	background-color: #970A07;
}

/* sätt värden till HTML-taggar [put some values to HTML-tags direktly] END */
/* Hela sidan [page] id */
#thepage {
	width:950px;
	min-width:800px;
	margin-left:auto;
	margin-right:auto;
}

/* Fönsterhuvudet, rubrikdelen [window header part] id */
#thewindowhead {}

/* vänstra övre delen av fönstret [the left upper part of window] class */ 
.thetopleft-contanier {}

td.thetopleft-contanier{
	text-align:left;
	vertical-align:top;
}

.thetopleft {}

td.thetopleft{
	color:#FFFFFF;
	text-align:center;
	vertical-align:top;
}

/* Mittendelen av fönsterhuvudet (rubrikdelen) [the middle part of window header part] class */
.thetopmiddle {}

td.thetopmiddle{
	text-align:center;
}

/* Området uppe till höger som innehåller frågorna (widgetcontainer) [the most topright area inside the window] class */
.thetopright {
	background-color: #D1D197;
}

td.thetopright{
	width:35%;
}

/* Flikarna [tabs] id */
#thetabs {}

/* Sidopanel (meny) [sidebar (menu)] class */
.sidebar-contanier {}

td.sidebar-contanier{
	vertical-align:top;
}

.sidebar {}

td.sidebar{
	background-color: #7A7649;
	width:22%;
	vertical-align:top;
}

/* Sidopanel 2 (meny) [sidebar 2 (menu)] class */
.the2sidebar-container {}

td.the2sidebar-container{
	vertical-align:top;
}

.the2sidebar {}

td.the2sidebar{
	background-color: #7A7649;
	width:22%;
	vertical-align:top;
}

/* Inläggen / posterna / 'loopen' [the loop] class */
.theloop-container {}

td.theloop-container {
	vertical-align:top;
}

.theloop {}

td.theloop {
	width:52%;
	vertical-align:top;
}

/* Respektive inlägg / post [the single post] klass [class] */
.thepost {
	background-color: #D1D197;
}

/* Respektive inlägg / post, huvud [the single post head] klass [class] */
.theposthead {}

/* Respektive inlägg / post, text (content = innehåll) [the single post conten] klass [class] */
.theposttext {}0

/* Respektive inlägg / post, s.k. metadata (kategorier, ettiketter) [the single post meta] klass [class] */
.thepostmeta {}

/* Respektive inlägg / post, 'fot' [the single post foot] klass [class] */
.thepostfoot {}

 /* Navigeringsdelen, om det finns flera poster så kan man visa länk till föregående respektive efterkommande (nedanför loopen men tillhör den likväl) [the navigation part below the loop] klass [class] */
.thenavigation {}

/* Sidfoten [foot] id */
#thefoot {}

/* SLUT: placering på sidan och färger [END: typography and colors] */

Filen: functions.php;
<?php
if ( function_exists('register_sidebar') )
    register_sidebar(array(
        'before_widget' => '<hr />',
        'after_widget' => '',
        'before_title' => '<H3>',
        'after_title' => '</H3>',
    ));

register_sidebar(array(
        'name' => 'the2sidebar',
        'before_widget' => '<hr />',
        'after_widget' => '',
        'before_title' => '<H3>',
        'after_title' => '</H3>',
    ));

register_sidebar(array(
        'name' => 'thetopright',
        'before_widget' => '',
        'after_widget' => '',
        'before_title' => '',
        'after_title' => '',
    ));

?>

Filen: index.php;
<?php get_header(); ?>
<table><tr>
<td class="sidebar-contanier"><!-- START -->
	<table><tr>
		<td class="sidebar"><!-- START -->
			<?php get_sidebar(); ?>
		</td><!-- class sidebar END -->
	</tr></table>
</td><!-- class sidebar-contanier END -->
<td class="theloop-container"><!-- START -->
	<table><tr>
		<td class="theloop"><!-- START -->
		<?php if (have_posts()) : ?>
			<?php while (have_posts()) : the_post(); ?>
				<div class="thepost"><!-- START -->
					<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent länk till: <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2>
					<small><?php the_time('F jS, Y') ?> <!-- by <?php the_author() ?> --></small>
						<?php the_content('Läs resten av det här inlägget &raquo;'); ?>
					<p class="postmetadata"><?php the_tags('Ettiketter: ', ', ', '<br />'); ?> Kategori: <?php the_category(', ') ?> | <?php edit_post_link('Redigera', '', ' | '); ?>  <!-- <?php comments_popup_link('Inga Kommenetarer &#187;', '1 Kommentar &#187;', '% Kommentarer &#187;'); ?> --></p>
				</div><!-- class thepost END -->
			<?php endwhile; ?>
				<?php next_posts_link('&laquo; Äldre inlägg') ?>
				<?php previous_posts_link('Nyare inlägg &raquo;') ?>
		<?php else : ?>
			<h2 class="center">Hittar inget</h2>
			<p class="center">Du söker efter något som inte hittas, här..</p>
			<?php include (TEMPLATEPATH . "/searchform.php"); ?>
		<?php endif; ?>
	</td><!-- class theloop END -->
	</tr></table>
</td><!-- class theloop-container END -->
<td class="the2sidebar-container"><!-- START -->
	<table><tr>
		<td class="the2sidebar"><!-- START -->
			<?php include (TEMPLATEPATH . '/the2sidebar.php'); ?>
		</td><!-- id the2sidebar END -->
	</tr></table>
</td><!-- class the2sidebar-container END -->
</tr></table>
<?php get_footer(); ?>

Filen: header.php;
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
<head>
<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />
<title><?php wp_title(); ?> <?php bloginfo( 'name' ); ?></title>
<link rel="profile" href="http://gmpg.org/xfn/11" />
<link rel="stylesheet" href="<?php bloginfo( 'stylesheet_url' ); ?>" type="text/css" media="screen" />
<link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>" />
<?php if ( is_singular() && get_option( 'thread_comments' ) ) wp_enqueue_script( 'comment-reply' ); ?>
<?php wp_head(); ?>
</head>
<body>
<div id="thepage" ><!-- START -->
<div id="thewindowhead"><!-- START -->
	<?php include (TEMPLATEPATH . '/ngn-header.php'); ?>
</div><!-- id thewindowhead END -->
<!-- Här ska sedan in anropet till filen: 'ngn-theTabs.php' -->

Filen: ngn-header.php;
<table><tr>
<td class="thetopleft-contanier">
	<table><tr>
		<td class="thetopleft">
			<!-- vänstra övre delen av fönstret [the left upper part of window] -->
			<p><img src='/images/Nisse_02(1).jpg' alt='Bild på bloggens författare' /></p>
			<p><b>Nisse</b></p>
		</td>
	</tr></table>
</td>
<td class="thetopmiddle">
<!-- Mittendelen av fönsterhuvudet (rubrikdelen) [the middle part of window header part] -->
	<H1><?php bloginfo( 'name' ); ?></H1>
</td>
<td class="thetopright">
<!-- Området uppe till höger som innehåller frågorna (widgetcontainer) [the most topright area inside the window] id -->
	// innehåll som man vill visa innan de s.k. widgets, den 3:e
	<?php if ( !function_exists('dynamic_sidebar')
        	|| !dynamic_sidebar('thetopright') ) : ?>
	// standard sidomeny om inga widgets används
	<?php endif; ?>
	// innehåll som man vill visa efter de s.k. widgets, den 3:e
</td></tr></table>

Filen: sidebar.php;
// innehåll som man vill visa innan de s.k. widgets
<?php if ( !function_exists('dynamic_sidebar')
        || !dynamic_sidebar() ) : ?>
// standard sidomeny om inga widgets används
<?php endif; ?>
// innehåll som man vill visa efter de s.k. widgets

Filen: the2sidebar.php;
// innehåll som man vill visa innan de s.k. widgets, den 2:a
<?php if ( !function_exists('dynamic_sidebar')
        || !dynamic_sidebar('the2sidebar') ) : ?>
// standard sidomeny om inga widgets används
<?php endif; ?>
// innehåll som man vill visa efter de s.k. widgets, den 2:a

Filen: footer.php;
<hr />
<!-- Om man vill visa att man gillar WordPress så kan man visa det här, t.ex. -->
	<p>
		<?php bloginfo('name'); ?> fungerar tack vare 
		<a href="http://wordpress.org/">WordPress</a>
		<br /><a href="<?php bloginfo('rss2_url'); ?>">Inlägg (RSS)</a>
		och <a href="<?php bloginfo('comments_rss2_url'); ?>">Kommentarer (RSS)</a>.
		<!-- <?php echo get_num_queries(); ?> besök. <?php timer_stop(1); ?> sekunder. -->
	</p>
	<?php wp_footer(); ?>
</div><!-- END id thepage -->
</body>
</html>

Nu får det räcka för idag!
**********************

Jag gör såhär uteslutande, nästan jämt, när jag håller på med 'kodning', för anteckningar i en ren textfil.
Och jag kan meddela att bloggexp.ngn.nu under hela utvecklingens gång validieras och det är inga 'error' (bara en varning, fortfarande?)

Korpen
Fick ett mej från den som ledde varmvattengympan på fredagar, det var fullt. Även på torsdagen. Så nu ligger mitt hopp till Distriktssjukgymnastiken.

Hälsoläget:
Inga höga växlar idag… Segt och trögt men svär värk att gnälla om. Min tinnitus kan jag däremot gnälla mycket om. Mina eksem har blivit betydligt bättre så då var det svamp som doktorn trodde.
[02-05-045-045]

Idag har jag fixat med lite av varje

 

sömn;  helt ok. Fast jag var väldans trött på morgonen. Jag kan tänka mig två förklaringar, sent sänggående och mycket mediciner.

Bemärkelsedag
Imorgon fyller sonen 30 år och inför vårt gratulerande har jag knåpat i timmar med en grej han ska få, senare.

Släktforskning
En kusin, till framlidna (konstigt ord, egentligen) morVivan, ringde, häromdagen, och dels undrade vart far blivit av och dels en del frågor om en gemensam anfader på min moders sida.

Hon fick mobilnumret till far.

De (jag vet inte vilka 'de' är) hade problem med Anton Andersson (1855-1932). De kunde inte riktigt säkra vart han föddes. Anton var min mors farfar.

Efter lite 'lusande' hittade jag han och det var lite knepigt, mest beroende på att han vart född utanför äktenskapet. Men fadern är faktiskt namngiven.
Min mors farfar Anton föddes den 30 september 1855 i Herrestad.
Moder: Anna Christina Petersdotter.
Fader: Toyne Hagen …, från Dahlsland.
Jag har inte forskad vidare på fadern.

Anton får 1860 14/7 en syster, Josefina. Även hon född utanför äktenskap och ingen far finns namngiven. Hon föds i Skredsvik.
Hon växer upp och jobbar runt som piga, inom Herrestad och Skredsvik. Hon dör, endast 24 år gammal, 1884 9/10 i Herrestad, Gäddeknippeln.

Hur gick det för Antons mor då? Anna Christina Petersdotter född 1825 7/11 i Skredsvik.
Har inte riktigt koll på precis när familjen flyttade till Jordhyttan, Svensland södra i Skredsvik men hon bor där till sin död, 1900 12/4

Anna Christina hade också en syster, Antons moster:
Johanna Maria, född 1828 12/5 (å en del ställen står det angivet 12/8) i Skredsvik. Hon blir inte så gammal hon heller, hon dör 1862 15/3 i Skredsvik.
Johanna Maria fick också ett barn, utan namngiven far; en kusin till Anton; Josefina, hon föddes 1858 15/4 men blev bara ca 2 månader gammal. Hon dör 1858 11/6 i Svensland norra, Skredsvik. (Johanna Maria tjänstgör där då som piga).

Antons mormor och morfar:
Morfar: Peter Johansson f. 1798 9/1 i Skredsvik
Mormor: Johanna Olsdotter f. 1803 2/11 i Skredsvik

Morfar Peter Johanssons mamma och pappa:
mor: Kerstin Olsdotter, ålder 28 år, när Peter föds.
far: Johannes Persson.
De bodde i Bråten, Skredsvik, när Antons morfar Peter föddes.
Morfar Peter dör 1870 6/3 i Jordhyttan, Svensland södra, Skredsvik.

Mormor Johanna Olsdotters mor & far:
mor: Anna Johansdotter, ålder 24 år, när Johanna föds.
far: Olof Olsson.
De bodde i Kråkered, Skredsvik, när Antons mormor Johanna föddes.
Mormor Johanna dör, som änka & fattighjon, 1882 12/4 i Jordhyttan, Svensland södra, Skredsvik.

Har skickat ett brev med dessa och betydligt mer detaljerade uppgifter till mors kusin.
(dock inte uppgiften om när Antons mormor Johanna dör, det tog jag reda på 'nu').

Katten
Nu blev det av att vi kom med katten till veterinär. Han fick sin vaccination och en liten undersökning.
Jag (vi) skulle ju få djurfoder som 'present' om jag kom bland de 50 första vid öppningsdagen. Jag var där först – och allt var i det närmaste kaos. Presentfodret har inte kommit än. Det har tydligen fastnat på någon tåggodsterminal…

De hade en sådan där hundvåg där. Hustrun gick dit och prövad den. Jag undrade om den visade hundkilo på samma vis som hundår, he, he…
Jag gick dit, den visade inget, bara '—–'. Hustrun visade mig då en liten text: "max 100 kg"…

Bloggutveckling
Har det inte blivit så mycket av idag. Mest försökt lära mig lite mer detaljerat hur man använder HTML-taggen (egenskapen) 'div'.
En 'div' är en förkortning av: 'division': område / uppdelning. Det skapar en slags 'box' i vilken man kan styra utseende och innehåll.

Hur denna 'div' ska se ut och bete sig styr av 'styling'. Engelska 'style' (stil). Denna 'design / stil' kan sättas antingen direkt i taggen 'div', i ett HTML-elemen (då angivet som: style="color:red;") eller så kan man definiera detta i speciella stilfiler (t.ex.: style.css). För att det hela ska fungera och bli rätt så måste 'div':en få en identitet;
Egenskapen 'id'. I stilfilen har identiteter prefixen '#'.

I HTML-dokumentet är det sedan god XHTML-standard att endast ange en identitet en gång. Det hela fungerar, om man anger dem flera gånger, men validieringen blir irriterad och det kan generera svårspårade problem (Mest problem för den som kodar alltså.).

För att det hela ska kunna vara riktigt flexibelt så kan man också definiera egenskapen klass (class). Den kan förekomma hur måna gånger som helst, utan att det skapar problem för validiering. Sedan kan det visserligen bli problem för den som kodar men det är en annan sak.
I stilfilen har egenskapen 'class', prefixen: '.'

Om definierade egenskaper 'id' och 'class' förekommer samtidigt i t.ex. en 'div' så går 'id' före 'class'. Lite hierarki och ordning ska det vara.

Tja, det får räcka för idag. Jag vill ju inte få sprängd skalle…

Promenad
Bidde det ingen idag. Rackarns skitväder! Rå kall vind och underkylt regn.

Farsan
Han åt och så hade han fått halsont och kanske var där lite feber också. Sa till han att då måste han säga till sköterskan om det. Blev påmind om att jag lovat fixa snus… (redan gjort så det är klart för leverans).

Motion
Har tagit reda på när vår lokala Korpen-förening har varmvattenaktiviteter här i staden Vänersborg. Har skickat en anmälan till dem om att jag vill delta i något de kallar: "Vattengympa agua-soft", fredagar kl 17:00 i rehabbadet. 650 SEK får jag betala för 'terminen' i det priset ingår en medlemsavgift om 100 SEK. Det är 10 ggr kvar om jag fattat det hela rätt.

Hälsoläget:
Trött dag. Har lyckats, trots tröttheten, ändock få en hel del gjort. Fick dock stoppa i mig en extramedicin när vi var hos veterinären.
[04-06-040-010]

Data-Söndag

Besvärsläget
Är bra, så länge jag inte rör för mycket på mig. Och så livar vårvädret upp. Nyttig promenad. Och så sköter jag min avspänning och så åt jag sallad till lunch. Har inte syndat ’än’ (21:54).

Bloggutveckling
Jag ska inte trötta ut er med enormt intressanta detaljer om php, XHTML och JavaScript. Jag håller ju på och pular med en funktion där jag kan få in nyhetsartiklar, från Google. Här längst ned till höger hade jag tänkt och då om sådant som är relaterat till; nacke, rygg, värka och smärta.

Den funktionen jag ville använda. Alltså helt via WordPress och mest php & XHTML-kod och lite mindre JavaScript visade sig köra ihop sig på ett tidigt stadium.

Man kan få svenska artiklar från en massa svenska nättidningar, via Google, om man ’beställer’ det från en svensk dator med svensk programvara och via en svensk s.k. server. När jag hade allt klart och fint för testning så vägrade det hela att ge ifrån sig den allra minsta lilla svenska artikel.

Att få det på engelska/amerikanska, inga problem. Lyckades t.o.m. få artiklar på italienska. Men på Svenska? Icke! Och felet eller bristen ligger i WordPress och dess inbyggda hantering av s.k. RSS (xml-flöden / textföden i efter ett bestämt utseende).

Har ägnat en stor del av dagen av att söka kunskap om det finns någon lösning på det där. Det finns det säkert. Men jag hittar helt enkelt inget så jag gav upp. Och nu håller jag på att s.k. implementerar den där lösningen som jag presenterade i gårdagens inlägg.

Det kanske var lite svårt att hitta. Det var en liten ’här’-grej. Missade ni den? OK, då kommer det ett lite större ’här’:

(funkar inte längre)HÄR


Andra Bloggar om: , , , , ,