Skip to content

Datenstrom Yellow 0.8.2 has been released #403

markseu started this conversation in Write feedback
Datenstrom Yellow 0.8.2 has been released #403
Feb 26, 2019 · 7 comments

What's new:

  • added support for themes with custom HTML/CSS/JavaScript
  • merged plugins and themes into extensions
  • merged templates and snippets into layouts
  • updated content files, changed setting Template to Layout
  • updated system files, changed and flattened folder structure
  • updated API, @datenstrom/developers please have a look
  • updated API, changed onParseContentBlock() to onParseContentShortcut()
  • updated API, changed onParsePage() to onParsePageLayout()
  • updated API, changed onExtra() to onParsePageExtra()
  • updated API, changed snippet() to layout()
  • updated API, changed getSnippetArgs() to getLayoutArgs()
  • updated API, changed yellow->config to yellow->system
  • updated API, changed yellow->pages to yellow->content
  • updated API, changed yellow->files to yellow->media
  • updated API, changed yellow->plugins and yellow->themes to yellow->extensions
  • updated API, changed setting pluginLocation/themeLocation to extensionLocation
  • updated API, changed setting pluginDir/themeDir to extensionDir
  • updated API, changed setting assetLocation to resourceLocation
  • updated API, changed setting assetDir to resourceDir
  • updated API, changed setting configDir to settingDir
  • updated API, changed global $yellow to $this->yellow
  • updated API, removed register() from extensions

Notes: It’s time to say goodbye to the old API. Over the last months internal changes have been pushed back, so that most changes happen all at once. Backwards compatibility with the old API will be removed soon. Please update your website now.

Something not working? Do you have questions about this release? Let us know. 😄

Replies

0 replies

Amazing Update ;D Thanks for that ;D

0 replies

Major Update Great Work!
Since I've found Yellow, I've decided to leave all wordpress behind, and start crafting the Yellow, it's fun. Wondering for next release featuring:

  • onParsePageExtra() has header/footer option that help me a lot, also this function provide an additional option to wrapping the client-side script in document.addEventListener('DOMContentLoaded') In certain case, the client-side script sometime need to wait all HTML document completely loaded and parsed, and also its help me to avoid duplicate DOMContentLoaded statement by any extensions.

  • Glad to find that all script supplies by the extension are minified and deferring, it's help to avoid SEO's render blocking issue. Hope for next release, better placing those too at the end of body (not in the head) to improve SEO's First Contentful Paint speed issue.

  • Slider extension also providing external link for each image when click event trigerred. In my case, i have to customize it with additional slider.md to store the link list.

  • Blog extension also featuring generated Google's AMP layout that automatically rendered from blog content.

  • Didn't find yet the default header generate open graph meta property as one of important thing and common use in shareable page. I've to manually add it with customizing the header layout (Yellow previous version 0.7.x) :

<meta property="og:type" content="article" />
<meta property="og:locale" content="<?php echo $yellow->page->get("language") ?>" />
<?php if ($yellow->page->isExisting("Template") && $yellow->page->get("Template")=="blog"){ ?>
<meta property="article:published_time" content="<?php echo preg_replace('/\s+/','T',$yellow->page->get("Published")) ?>Z+07:00" />
<meta property="article:author" content="<?php echo $yellow->config->get("Author") ?>" />
<meta property="article:tag" content="<?php echo $yellow->page->get("Tag") ?>" />
<?php } else echo "<meta property=\"og:type\" content=\"website\" />\n"; ?>
<meta property="og:site_name" content="<?php echo $yellow->page->get("sitename") ?>" />
<meta property="og:title" content="<?php echo $yellow->page->get("titleHeader") ?>" />
<meta property="og:description" content="<?php echo $yellow->page->get("Description") ?>" />
<meta property="og:url" content="<?php echo $urlclean ?>" />
<?php
$og_image_alt = $yellow->page->get("sitename");
$og_image = $yellow->config->get("ImageDir")."logo.jpg";
if ($yellow->page->isExisting("Template") && $yellow->page->get("Template")=="blog"){
$og_image_alt = $yellow->page->get("titleHeader");
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $yellow->page->getContent(), $matches);
if (!empty($matches [1] [0])) $og_image = $matches [1] [0];
}
$og_image = preg_replace('/\/edit/','',$urlbase.preg_replace('/\/blog\//','',$og_image));
list($width, $height) = getimagesize($og_image);
?>
<meta property="og:image" content="<?php echo $og_image ?>" />
<meta property="og:image:type" content="<?php echo $yellow->toolbox->getMimeContentType($og_image) ?>" />
<meta property="og:image:width" content="<?php echo $width ?>" />
<meta property="og:image:height" content="<?php echo $height ?>" />
<meta property="og:image:alt" content="<?php echo $og_image_alt ?>" />

0 replies

@sukmabudi Regarding Open Graph support you can use my Socialtags extension, it has support for Twitter cards too. Since I'm not using facebook at all, the extension hasn't been fully tested by people who have a real need for this. So feel free to make suggestions.

0 replies

Seems as if "bundle.php" disturbes local google fonts. I could not localize it but when I remove the extension, the fonts are set as expected, if active only the last font defined with "@font-face" is used if there are at least two. If only one font is defined by "@font-face" this font is ignored.

0 replies

@markseu
markseu Mar 11, 2019
Maintainer Author

@BsNoSi The bundle extension does a normalisation of the HTML head before bundling resources, perhaps something goes wrong here, but I don't think it was changed this releases. If you want me to investigate, please open a new issue.

0 replies

@markseu
markseu Mar 17, 2019
Maintainer Author

@sukmabudi Thank you for your feedback. Regarding Google's AMP layout, please make your own theme with custom layout files. Regarding slider, please open a new issue. I can not promise to add more functionality to the slider, but I'd like to understand what's missing or not working.

0 replies
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
💬
Write feedback
6 participants
Converted from issue