_is_twoclick_settings_page()) { $this->_get_changelog(); } // END if($this->_is_twoclick_settings_page()) } // END function __construct() /** * <[ Helper ]> * Das Changelog ausgeben. * * @since 1.0 * @author ppfeufer */ private function _get_changelog() { $array_Changelog = $this->_get_changelog_from_reame(); if($array_Changelog === false) { ?>

Sorry

Es tut mir leid, aber die Datei readme.txt des Plugins konnte nicht ausgelesen werden. Dies kann viele Ursachen haben, in den meisten Fällen hilft es, den hister zu kontaktieren und darum zu bitten, dass die PHP-Funktion file_get_contents() auf lokale Dateien im Webverzeichnis zugreifen kann.

Version:

* Das Changelog aus der readme.txt rausfriemeln. * * @since 1.0 * @author ppfeufer */ private function _get_changelog_from_reame() { $var_sReadme = @wp_remote_retrieve_body(wp_remote_get(TWOCLICK_PLUGIN_URI . 'readme.txt')); if(is_wp_error($var_sReadme)) { return false; } // END if(is_wp_error($var_sReadme)) if(!empty($var_sReadme)) { $var_sReadme = str_replace(substr($var_sReadme, 0, strpos($var_sReadme, '== Changelog ==')), '', $var_sReadme); $var_sReadme = str_replace('== Changelog ==', '', $var_sReadme); $var_sReadme = substr($var_sReadme, 0, strpos($var_sReadme, '==')); $array_Readme = explode('= ', $var_sReadme); $array_ReadmeSorted = array(); foreach((array) $array_Readme as $array_Read_Me) { $array_Temp = array(); $array_Temp = explode("\n", $array_Read_Me); $array_Temp['0'] = str_replace(' =', '', $array_Temp['0']); if(!empty($array_Temp['0'])) { for($count_i = 0; $count_i < count($array_Temp); $count_i++) { if(empty($array_Temp[$count_i])) { unset($array_Temp[$count_i]); } else { $array_Temp[$count_i] = preg_replace('/^\\* (.*?)/', '\\1', $array_Temp[$count_i]); $array_Temp[$count_i] = preg_replace('/\\[(.*?)\\]\\((.*?)\\)/', '\\1', $array_Temp[$count_i]); $array_Temp[$count_i] = preg_replace('/`(.*?)`/', '\\1', $array_Temp[$count_i]); $array_Temp[$count_i] = preg_replace('/\\*\\*(.*?)\\*\\*/', ' \\1', $array_Temp[$count_i]); $array_Temp[$count_i] = preg_replace('/\\*(.*?)\\*/', ' \\1', $array_Temp[$count_i]); } // END if(empty($array_Temp[$count_i])) } // END for($count_i = 0; $count_i < count($array_Temp); $count_i++) // Letztes Element ausm Array entfernen, dies enthält nur ein \n array_pop($array_Temp); $var_sVersion = trim($array_Temp['0']); $var_sDatum = trim(preg_replace('/\\((.*?)\\)/', '\\1', $array_Temp['1'])); unset($array_Temp['0']); unset($array_Temp['1']); $array_Changes = array(); foreach((array) $array_Temp as $var_iKey => $var_sValue) { $array_Changes[] = trim($var_sValue); } // END foreach((array) $array_Temp as $var_iKey => $var_sValue) $array_ReadmeSorted[] = array( 'version' => $var_sVersion, 'datum' => $var_sDatum, 'changes' => $array_Changes ); } // END if(!empty($array_Temp['0'])) } // END foreach((array) $array_Readme as $array_Read_Me) // $var_sReadme = preg_replace('/^\\*(.*?)\n/', '
  • \\1
  • ', $var_sReadme); // $var_sReadme = preg_replace('/\\*\\*(.*?)\\*\\*/', ' \\1', $var_sReadme); // $var_sReadme = preg_replace('/\\*(.*?)\\*/', ' \\1', $var_sReadme); // $var_sReadme = preg_replace('/=== (.*?) ===/', '

    \\1

    ', $var_sReadme); // $var_sReadme = preg_replace('/== (.*?) ==/', '

    \\1

    ', $var_sReadme); // $var_sReadme = preg_replace('/= (.*?) =/', '

    \\1

    ', $var_sReadme); // $var_sReadme = preg_replace('/\\[(.*?)\\]\\((.*?)\\)/', '\\1', $var_sReadme); // $var_sReadme = preg_replace('/`(.*?)`/', '\\1', $var_sReadme); // Speicher wieder freigeben, also bissle aufräumen unset($array_Changes); unset($array_Read_Me); unset($array_Readme); unset($array_Temp); return $array_ReadmeSorted; } else { return false; } // END if(!empty($var_sReadme)) } // END private function _get_changelog_from_reame() /** * <[ Helper ]> * Check if we are on the settings page * * @return boolean */ private function _is_twoclick_settings_page() { if($this->_get_screen()->id == $this->var_SettingsPageScreenID) { return true; } else { return false; } // END if($this->_get_screen()->id == $this->var_SettingsPageScreenID) } // END private function _is_twoclick_settings_page() /** * <[ Helper ]> * Returning the current screen object. * * @since 1.0 * @author ppfeufer * * @return Ambigous */ private function _get_screen() { return get_current_screen(); } // END private function _get_screen() } // END class Twoclick_Social_Media_Buttons_Backend_Changelog new Twoclick_Social_Media_Buttons_Backend_Changelog(); } // END if(!class_exists('Twoclick_Social_Media_Buttons_Backend_Changelog'))