Install Package Control for easy package management.
- Open the console with
Ctrl+`
- Paste in the following:
<?php | |
/** | |
* Custom Datasource Skeleton | |
* | |
* A bare-bones example of a custom datasource for use with Symphony 2.3 | |
* | |
* @author: Ian Young | |
* @email: [email protected] | |
* @date: 12.01.2014 |
Install Package Control for easy package management.
Ctrl+`
A list of requirements for Symphony Next from differing user roles and perspectives.
Function | Shortcut |
---|---|
previous tab | ⌘ + left arrow |
next tab | ⌘ + right arrow |
go to tab | ⌘ + number |
go to window | ⌘ + Option + Number |
go to split pane by direction | ⌘ + Option + arrow |
go to split pane by order of use | ⌘ + ] , ⌘ + [ |
split window horizontally (same profile) | ⌘ + D |
split window vertically (same profile) | ⌘ + d |
There are many types of caching that will improve website performance. Here are just five:
Every read query that Symphony executes is cached by MySQL. It is important to understand that this is not the result of the query, but the SQL statement itself. MySQL retains a pool of these statements so that they are quicker to execute in the future. This is pretty standard, and you can use it in your own applications too by using SELECT SQL_CACHE
for your read queries.
Once the database has been queried, the results are used to build objects (pages, data sources, sections, field, entries etc.). These objects are alive only for the lifespan of each page, and are destroyed at the end of each request. Systems such as Wordpress allow these objects to be cached and persisted between each page request (using APC, Memcache, flat files or MySQL), thereby shared between all users. Symphony doesn't do this, but it really should.
If you have one piece of a p
<!-- Add the 'math' namespace to your XML stylesheet (so we can use 'math:random') --> | |
<xsl:stylesheet version="1.0" | |
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" | |
xmlns:math="http://exslt.org/math" | |
extension-element-prefixes="math"> | |
<!-- Pick a random number between 1 - 10 and set as a variable --> | |
<xsl:value-of select="(floor(math:random()*10) mod 10) + 1" /> |
<!-- Add the 'math' namespace to your XML stylesheet (so we can use 'math:random') --> | |
<xsl:stylesheet version="1.0" | |
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" | |
xmlns:math="http://exslt.org/math" | |
extension-element-prefixes="math"> | |
<!-- Pick a random number between 1 - 10 and set as a variable --> | |
<xsl:variable name="random-bg"> | |
<xsl:value-of select="(floor(math:random()*10) mod 10) + 1" /> | |
</xsl:variable> |
<xsl:output | |
method="xml" | |
doctype-system="about:legacy-compat" | |
encoding="UTF-8" | |
indent="yes" /> |
<xsl:variable name="html-ready"> | |
<!-- prepare the HTML as you want it --> | |
</xsl:variable> | |
<!-- stringify it --> | |
<xsl:call-template name="nodetostring"> | |
<xsl:with-param name="node" select="$html-ready"/> | |
<xsl:with-param name="esc-dblq" select="true()"/> | |
</xsl:template> |
<!-- | |
CHECK IF A STRING IS NULL OR EMPTY | |
--> | |
<!-- Example XML --> | |
<group> | |
<item> | |
<id>item 1</id> | |
<CategoryName>blue</CategoryName> | |
</item> |