Gewusst wie: WordPress Umzug zu einer neuen Domain / in ein neues Verzeichnis (die Links/Verweise stimmen nicht mehr – wie man sie richtig setzt)

Problem

Nach dem Umzug von WordPress auf eine neue Domain / ein neues Verzeichnis stimmen die Verweise nicht mehr. Die Datenbank beinhaltet immer noch alte Bilder und Verweise.

Prämissen / Vorraussetzungen

  • Sie haben vor dem Backup alle Plugins im Adminmenü ihrer aktuellen Installation deaktiviert (Vor allem Jetpack!!!)
  • Sie haben einen Datenbank Dump erstellt (über PHPMyAdmin oder ihr Provider bietet einen Service mit anschließendem Download an)
  • Sie haben den Datenbank Dump beim neuen Provider in die neue Datenbank eingespielt
  • Sie haben die Datenbankkonfiguration in wp-config.php angepasst
  • Sie haben das komplette Verzeichnis Ihrer WordPress Installation kopiert und an den neuen Ort/auf den neuen Server eingefügt

Trotzdem verweisen die Links beim Anklicken immer noch an alte Orte mit dem alten Verzeichnis/der alten Domain?

Ansatz

Absetzen von 3 UPDATE Statements auf die SQL Datenbank, die die Links/Verzeichnisse auf den neuen Installationsort zeigen lässt.
Anpassen der Datei wp-config.php (Verzeichnisse bzw. Datenbankeinstellungen anpassen!!!)

Lösung

Über einen SQL Editor (bzw. über PHPMyAdmin) können Sie nach Auswahl der Datenbank nachfolgende SQL Anweisungen absetzen.

Im folgenden Beispiel wurde vom Quell-Verzeichnis http://192.168.1.25 die WordPress Installation in das Verzeichnis http://192.168.1.25/blog verschoben und mit den nachfolgenden SQL Anweisungen die Links richtig gesetzt:

UPDATE wp_posts
SET guid =REPLACE(
guid,
"192.168.1.15",
"192.168.1.15/blog"
);

UPDATE wp_posts
SET post_content = REPLACE(
post_content,
"192.168.1.15",
"192.168.1.15/blog"
);

UPDATE wp_postmeta
SET meta_value = REPLACE(
meta_value,
"192.168.1.15",
"192.168.1.15/blog"
);

UPDATE wp_options
SET option_value = REPLACE(
option_value,
"192.168.1.15",
"192.168.1.15/blog"
);

Anmerkung 1: Sollte es noch Probleme geben sollten Sie die Verzeichnis und Datenbankeinstellungen in der Datei wp-config.php prüfen (Kommentare je Parameter sind ausreichend vorhanden).

Anmerkung 2: Nachdem die obigen SQL Anweisungen durchgeführt wurden, muss evtl. im Admin-Menü der Worpressinstallation unter dem Punkt „Einstellungen“, bzw. „Settings“, im Punkt Allgemein/General eine weitere URL vom alten auf die neue URL umgebogen werden (bitte überprüfen).

Anmerkung 3: Jetpack für WordPress macht trotz eigener Worpress-Installation aus vergrößerbaren Bildern eine Umleitung über WordPress.com, daher sollten sie unbedingt dieses Plugin vor der Sicherung deaktiviert haben.

Veröffentlicht unter Wordpress | Hinterlasse einen Kommentar

Propsteifestival Johannesberg / Fulda / Konzerte : Impressionen vom Samstag, den 18.05.2017 mit Phil (Phil Collins- und Genesis Cover Band)

Einleitung

Zum Propsteifestival in Johannisberg habe ich persönlich eine besondere (Schall-)Verbindung, da ich mich der Musik aufgrund der Berglage des Propsteischlosses und der fast ungebremsten Schalllinie zu meinem Haus schwer entziehen kann. Ich wohne nun seit fast 10 Jahren hier und es hat zeitlich oder wetterabhängig leider selten gepasst dort mal einen Blick zu riskieren, obwohl ich die Musik eigentlich gut finde.

Rückblick auf 2015: Der erste Besuch

Vor 2 Jahren wollte ein Bekannter eine heimische, hier weniger bekannte Fuldaer Metal-Band (Mercury Falling) sehen, was dann auch der ausschlaggebende Punkt war dem Festival mal einen Besuch abzustatten. Er erzählte mir, dass die Band (Mercury Falling) mit Edguy/Avantasia zusammen in der Nähe des Flugfeldes in Sickels seinen Proberaum hat. Nun waren wir also dort, und ich habe mir Mercury Falling angehört. Die Band betonte, dass sie sich wie „ein Fremdenführer durch ihr Programm“ fühle, da hier so wenig Leute wären und sie woanders wohl bekannter sind. Mal abgesehen davon, dass ich eine solche Aussage eher in eine narzistische Ecke stecke, war sie handwerklich recht gut und es hat metalmäßig ordentlich gegroovt. Ich habe mir auch anschließend eine CD gekauft, habe diese allerdings nie angehört, da ich wohl doch eher was mit der melodiösen Metalecke anfangen kann.

Was mich dann allerdings begeistert hat, war die Nachfolgeband „Kissin‘ Dynamite“, die ich vorher nicht kannte und die mich mit ihrem „Glam Metal“-Stil und ihren melodiösen, grellen Stimmen und coolen Gitarrenriffs begeistert hat. Aus diesem Grund kaufte ich mir auch ein  Album über Amazon-Music, das ich im Auto dann einige Male hörte. Später sah ich dann, dass sie eine Woche nach dem Propsteifestival in München im Olympia-Stadion mit KISS und Metallica gespielt haben.

Rückblick auf 2016: Kann ich nichts zu sagen :/

Da hat mal wieder meine Urlaubszeit mit den Festivalzeit kollidiert und ich konnte 2016 nicht am Festival teilnehmen…

Ein anderer Bekannter von mir hörte zu diesem Zeitpunkt die durch Seiler und Speer angesagten österreichischen Rockbands, die im Stil eher durch handgemachte Musik mit echten Instrumenten (Kontrabass, Violinen…) und ihrem sprachlichem Akzent hervorstechen. Da hätte es sich doch super angeboten zu Django 3000 zu gehen, die auch mittlerweile auf größerem Festivals wie dem Open Flair 2017 spielen.  Leider war mein Bekannter an dem Tag dann verhindert und ich kam gerade aus dem Urlaub zurück…

Das war der Festival-Samstag 2017

Nachdem ich am Freitag auf einen 40. Geburtstag eingeladen war, versuchte ich mich zunächst für den Samstag zu motivieren. Dieses Mal spielte am Samstag allerdings eine Coverband von Phil Collins/Genesis, welche vom Musikgenre her wohl doch eher das ältere Publikum anspricht. Ich hätte am Freitag lieber Speedswing gesehen, die mich durch ihre eingängigen YouTube-Videos überzeugt haben und noch so unbekannt sind, dass sie nicht mal einen Wikipedia-Eintrag haben :-).

Als Kind und Kegel dann im Bett waren und ich den Soundcheck hörte, fing ich allerdings an zu überlegen ob ich nun doch mal nach Johannisberg hochfahre oder nicht…

Dann warf ich den ersten Blick auf die Propstei-Webcam, welche mit 20-minütiger Verzögerung (das geladene Bild ist immer 20 Minuten plus/minus eine Minute alt) das Stalken des Festivalgeländes im Minutentakt erlaubt:

Ich konnte mich noch nicht sofort entscheiden, ob ich ein Phil Collins Cover unbedingt sehen möchte und verpasste daher die ersten 1.5h Stunden. Ich stieg ins Auto und fuhr dann die 5 Minuten, die ich von zu Hause aus brauche, hoch. Währenddessen hörte ich mir lautstark ein Manowar-Album an, denn ich stimme mich gerade auf die Manowar-Abschiedstour „The final battle“ ein :-).

Als ich oben ankam, gingen die ersten älteren Herrschaften schon wieder zum Auto. Ich fragte am Eingang wie lange die Band noch spielt, die meinten „so eine Stunde“, nahmen 10 EUR Eintritt von mir und wünschten mir viel Spaß.

Im Innenhof angelangt musste ich mich bei der Abenddämmerung erstmal von dem wunderschönen farbenprächtig, beleuchtetem Ambiente berieseln lassen:

Es war gerade Pause aber das alte Propsteischloss in schimmernden Farben fand ich sehr beeindruckend.


Es gab darüber hinaus eine Cocktailbar (hier der grün beleuchtete Stand), ein Getränkeverkauf und ein Stand mit Gegrilltem.

In der Mitte steht, wie bei jedem Konzert, das Licht- und Tontechnikzelt, dessen Veranstalltungstechnik von Musik Bode gestellt wird. In dem Musikgeschäft hatte mir mein Vater vor 20 Jahren damals meine erste Gitarre, die immer noch an meiner Wand hängt, gekauft :-).

Das Publikum war wie erwartet eher der Ü45-Generation zuzuordnen, daher gab es verdammt wenig Versuche für Stage-Diving-Aktionen.

Die Band selber bestand aus 11 Leuten, und hat ihr Programm in einer professionellen Qualität runtergezogen und versucht die Leute zu animieren (vorne waren auch schon einige Rollstuhlfahrer dabei).

Was ich an der Musik als Phil Collins-Laie beeindruckend fand ist, das man doch sehr viele 80er-Jahre-Titel kennt (ach das war auch von dem..?), obwohl ich nur Land of Confusion, Invisible Touch und „I can’t dance“ sofort zuordnet konnte.  Im Allgemeinen hat mir die Band trotzdem gut gefallen. Das bischen Nieselregen (scheint ein Fluch über der Propstei zu den Festivalzeiten zu sein) hat dieses Mal kein bischen gestört.

Fazit zum Proposteifestival:

Das Propsteifestival findet in einem sehr schönen Ambiente statt und hat des öfteren auch Newcomer-Bands im Line-Up, die sich kurze Zeit später auch höherer Bekanntschaft erfreuen. Leider hatten die Veranstalter nicht jedes Jahr Glück mit dem Wetter, so dass das eine oder andere Festival mal indirekt ins Wasser gefallen ist. Durch seine Verlegung in die wärmere Sommerzeit haben sich diese Probleme mittlerweile relativiert. Ich würde eigentlich viel öfter zu den Bands vorbeischauen die mich interessieren, aber auch hier trifft mich der Propsteifluch regelmäßig.

Alles in Allem lohnt sich ein Besuch und ich kann eine Teilnahme auch aufgrund der günstigen Eintrittspreise wärmstens empfehlen :-).

Veröffentlicht unter Musik | Hinterlasse einen Kommentar

WordPress Update Problem: The folder wp-content can not be found / Google Analytics for WordPress by MonsterInsights

Problem

You have to actualize your wordpress installation, but every time you try this, you get the message that the folder wp-content can not be located, and you are not able to install updates anymore.

Sie möchten die vorgeschlagenen Update von WordPress installieren, aber jedesmal kommt die Meldung das der WP CONTENT Ordner nicht gefunden werden kann.

Analyse – Analysis

The Google Analytics for WordPress by MonsterInsights Plugin is installed to generate google analytics statistics and activated.

Das Google Analytics for WordPress by MonsterInsights Plugin wurde genutzt um die Google Analytics Statistik zu integrieren. Das Plugin ist aktiviert.

Approach – Ansatz

Isolation of the problem: We try to isolate the problem by deactivating the Monsterinsights plugin.

Isolierung des Problems: Aufgrund eines bekannten Fehlers in Verbindung mit anderen Plugins testen wir die Effektivtät des Außerkraftsetzens durch Deaktivierung.

Solution – Lösung

  1. Go to the admin panel
  2. Select Plugins
  3. Deactivate the Google Analytics for WordPress by MonsterInsights
  4. Try to perform the update
  5. if it is still not working deactivate ALL PLUGINS
  6. Try to perform the update again

 

  1. Gehen Sie in das Administratorpanel von WordPress
  2. Wählen sie die Plugins-Sektion auf der linken Seite
  3. Deaktivieren Sie das Google Analytics for WordPress by MonsterInsights
  4. Versuchen Sie wieder alles zu updaten
  5. Sollte das nicht gehen deaktivieren sie ALLE PLUGINS
  6. Versuchen Sie noch einmal alles zu updaten
Veröffentlicht unter Allgemein, HTML/CSS, Wordpress | Verschlagwortet mit | Hinterlasse einen Kommentar

Song-Idee: Feuerwehrmann Sam Theme als Heavy Metal Version … Making of: Original-Akkorde rausgehört

Intention

Mein 3-jähriger Sohn steht wie alle Kinder in seinem Alter auf Feuerwehrmann Sam – dementsprechend singt er ständig die Titelmelodie textsicher nach. Da kann man sich als Elternteil natürlich schlecht entziehen. Deswegen möchte ich mit etwas Zeit mal versuchen eine Metalversion daraus zu machen.

Das Original / Vorlage

Zunächst hab ich mir die Gitarrenspuren des Originals genauer angehört:

Die rausgehörten Akkorde

Ich konnte folgende Akkorde identifizieren:

D                   Dsus4 D 
Alarm es kommt ein Notruf an

Hm7           A       D      H
Feuerwehrmann Sam ist unser Mann

(Bridge)
C C G G

D                Dsus4 D 
Ganz egal was auch passiert

Hm7       A         D      H
er bleibt ruhig und konzentriert

     D               E          G             A
Denn er löscht jeden Brand, der Feuerwehrmann Sam


     D              E          G             A
Denn dafür ist er bekannt, der Feuerwehrmann Sam

    C#moll       D      C#moll 
Was immer dich bedroht

G 		  A          D
Sam hilft dir in der Not

Ergebnis

Meine erste Version:

Als Video:

Veröffentlicht unter Aufnahmetechnik, Musikproduktion, Song Ideen | 1 Kommentar

Sparx Systems Enterprise Architect + SQL Queries : SQL Abfragen innerhalb von Enterprise Architect absetzen

Problem

Wer schon einmal versucht hat, eine lokale .EAP Datei in Microsoft Access zu öffnen, erlebt sein blaues Wunder, denn im Prinzip ist eine .EAP Datei nichts anderes als eine MS Access Datenbank (also ein .mdb-File), auf welches man SQL Queries absetzen kann. Bei der Migration eines lokalen .EAP Files in einen normalen SQL-Server, muss man zunächst die Datenstruktur anlegen und anschließend den Import starten. Eine großartige Transformation der Daten zwischen den Formaten findet also gar nicht statt. Was passiert aber wenn man kein MS Access / SQL Studio zur Verfügung hat?

Ansatz – Approach

Hierfür lässt sich der sogenannte Database Builder vervenden.

Lösung – Solution

Veröffentlicht unter Access, Datenbanken, Sparx Systems Enterprise Architect | Hinterlasse einen Kommentar

Sparx Systems Enterprise Architect + C#: Get all EA Elements of a package

Problem

All Elements of a package should be retrieved.

Approach – Ansatz

The method getElementsOfElement, which has been defined in the previous article is used to add all subelements of a package.

Lösung – Solution

public List<EA.Element> getElementsOfPackage(EA.Package package, string packageName)
{
    List<EA.Element> elementsOfPackage = new List<EA.Element>();
    // Only list the elements if the actual package is connected to a DOORS module
    if (package.Name == packageName)
    {
        foreach (EA.Element element in package.Elements)
        {
            elementsOfPackage.Add(element);
            elementsOfPackage.AddRange(getElementsOfElement(element));
        }
    }

    foreach (EA.Package subPackage in package.Packages)
    {
        elementsOfPackage.AddRange(getElementsOfPackage(subPackage, packageName));
    }
    return elementsOfPackage;
}

private List<EA.Element> getElementsOfElement(EA.Element actualElement)
{
    List<EA.Element> elementsOfElement = new List<EA.Element>();
    EA.Collection elements;
    elements = actualElement.Elements;

    foreach (EA.Element element in elements)
    {
        elementsOfElement.Add(element);
        elementsOfElement.AddRange(getElementsOfElement(element));
    }
    return elementsOfElement;
}
Veröffentlicht unter C#, Modellierung, Programmierung, Sparx Systems Enterprise Architect | Hinterlasse einen Kommentar

Sparx Systems Enterprise Architect + C#: Recursively get all elements and sub elements of an EA Element

Problem

All elements of an subelement should be catched

Approach – Solution

Recursively iterate through all subelements and AddRange (already a list) to the List.
The interuption of the recursion is, when an empty List is used as parameter for AddRange, because the loop will not be called where the AddRange-Method is in on next iteration.

Solution – Approach

private List<EA.Element> getElementsOfElement(EA.Element actualElement)
{
    List<EA.Element> elementsOfElement = new List<EA.Element>();
    EA.Collection elements;
    elements = actualElement.Elements;

    foreach (EA.Element element in elements)
    {
        elementsOfElement.Add(element);
        elementsOfElement.AddRange(getElementsOfElement(element));
    }
    return elementsOfElement;
}
Veröffentlicht unter C#, Modellierung, Programmierung, Sparx Systems Enterprise Architect | Hinterlasse einen Kommentar

Sparx Systems Enterprise Architect + C#: Get Top Package from selected Package

Problem

The top package of an Enterprise Architect Project EAP should be retrieved

Approach

Navigate to the Parent ID until the package return null.

Solution – Lösung

public EA.Package getTopPackage(EA.Package selectedPackage)
{
    EA.Package package = null;
    try
    {
        // If it has a parent it won't throw an error
        package = repository.GetPackageByID(selectedPackage.ParentID);
    }
    catch (System.Runtime.InteropServices.COMException)
    {
        // The selectedPackage is the top package
        package = selectedPackage;
    }
    // If this is not the top package, recall this function
    if (package != selectedPackage)
    {
        package = getTopPackage(package);
    }
    return package;
}
Veröffentlicht unter C#, Modellierung, Programmierung, Sparx Systems Enterprise Architect | Hinterlasse einen Kommentar

IBM Doors DXL: Recursively load formal module by name without knowing the path / Modul nach Name Laden (Folder bekannt)

Problem

A module should be loaded by name independend from the position in the Doors Project Structure.
Ein Modul soll nur anhand seines Namens geladen werden, ohne die genaue Position im Doors Projekt zu wissen.

Premise – Prerequirement – Voraussetzung

Start Folder is known. The doors module name is unique in the project, otherwise only the first found module with that name will be loaded.
Der Startordner ist bekannt. Der Doors Modulname ist im Projekt eindeutig. Ist dies nicht der Fall, wird nur das erste Modul mit diesem Namen geladen.

Lösung -Solution

Module getModule(Folder selectedFolder, string moduleNameToCompare)
{
 Item itm;
 Module moduleToReturn = null

 for itm in selectedFolder do 
 { 
  if(type(itm) "" == "Folder") 
  { 
   moduleToReturn = getModule(folder(itm), moduleNameToCompare);	
   if(moduleToReturn != null)
   {
    break
   } 
  } 
  else if(type(itm) "" == "Formal")
  {
   Module mod;		
   mod = edit(fullName(itm), false);
   if(!null mod)
   {
     if(name(mod) "" == moduleNameToCompare) 
     {  
      moduleToReturn = mod;
      objectFound = true
      break;
     }
   }
  }
  else if(type(itm) "" == "Link")
  {
  }
 }

 return moduleToReturn;
}
Veröffentlicht unter DXL, IBM DOORS, Programmierung | Hinterlasse einen Kommentar

IBM Doors DXL: Error Handling / Exceptions: try/catch / On Error Goto … missing? Fehlerbehandlung in Doors / DXL Fehler unterdrücken

Problem

DXL windows are opening every time a DXL error occurs and the users are sick of it :-).
Es werden jedesmal DXL-Fenster angezeigt, wenn eine DXL Funktion nicht richtig ausgeführt wird.

Ansatz

Über die Funktionen
void noError()
string lastError()

lassen sich Fehlerbehandlungsroutinen erzeugen, die Ähnlich den JAVA-Exceptions und .NET-Errors sind.

Lösung-Solution

// Try-Block start
noError(); // Alle Fehler werden deaktiviert und die Ausgabe im DXL Fenster unterdrückt

// hier den Code hin, der Fehler werfen kann

string catchMsg=lastError(); // Beinhaltet den letzten Fehler zur Ausgabe

// catchMsg ist null wenn kein Fehler existierte
if(!null catchMsg)
{
   infoBox catchMsg;
   halt;
}
Veröffentlicht unter DXL, IBM DOORS | Hinterlasse einen Kommentar