What is Tempcode, and how is it used in website themeing?
Answer
Tempcode is a templating language used within Composr. It offers a powerful way to control the output of dynamic content and design elements on a website. It works by using:
Parameters: Placeholders for content passed to the template from Composr / PHP.
Symbols: Global functions that perform operations, calculations, or retrieve information.
Directives: Instructions that control the flow or logic of content, such as conditional statements and loops.
Language strings: References to pre-defined text stored in language files for easy translation.
Escaping: Ensures the content generated is properly escaped according to its use case.
Tempcode empowers theme designers to create highly customizable and dynamic websites, allowing for logic, conditional rendering, and manipulation of various website elements.
How can design elements like dominance and attention to detail improve a website?
Answer
Dominance and attention to detail are key to a balanced and engaging website. Important elements can be emphasized using techniques like larger text, unique colors, and increased spacing. Conversely, less crucial elements should receive less emphasis. This interplay helps guide the visitor's eye and ensures a visually harmonious layout.
Attention to detail involves eliminating inconsistencies and distractions, such as typos, misaligned elements, and low-quality images, that can detract from the overall aesthetics and message of the website.
What is the importance of color schemes in website design?
Answer
Color schemes are crucial as they convey emotions and brand identity. Choosing colors that align with your website's purpose can evoke desired feelings in visitors. For example, a website selling chocolates might use shades of brown to subconsciously trigger associations with chocolate. However, an environmental website would be better suited using green, aligning with pre-existing perceptions of environmentalism.
It is also important to maintain consistency with your color scheme, limiting the number of colors used to avoid a conflicting and cluttered appearance.
Can I use Comcode / resource IDs directly when working with the repository?
Answer
Using Comcode / resource IDs directly is not recommended as they may not match between different sites. Use GUIDs instead, which Composr automatically substitutes for IDs before parsing Comcode. You can use Commandr commands like find_guid_via_id to find the GUID for specific resources.
You can access the repository using WebDAV (non-bundled addon), which allows you to view it as a folder on your computer. Composr uses the SabreDAV PHP library for WebDAV functionality. However, please be aware that SabreDAV is deprecated and may not function correctly on newer PHP versions.
The repository is structured as a filesystem with various meta-filesystems mounted under a root directory. These meta-filesystems include:
bin: Stores Commandr scripts.
database: Provides access to the raw database.
etc: Allows access to Composr configuration options.
home or filedump: Provides access to the File/Media Library.
home contains the files in a special JSON format with metadata
filedump contains the raw files
members: Lists registered members with their settings and user groups.
raw or root: Provides access to the Composr installation directory.
raw contains the raw files without overrides, and modifying any file modifies them directly without automatic override handling
root contains the files with applicable overrides applied automatically, and Composr will automatically handle overrides and utilizing _custom directories when these files are modified
var: Contains structured website resources and content.
Can I display different content to different usergroups?
Answer
Yes, you can achieve this by leveraging Tempcode within your templates. By using conditional statements like {$IS_IN_GROUP} and {$HAS_PRIVILEGE}, you can show or hide specific content sections based on the user's group membership or privileges. This technique allows you to "tease" premium content to non-paying users or tailor the user experience based on their access level.
What are match-key permissions and why would I use them?
Answer
Match-key permissions provide a more granular level of access control beyond the standard zone, page, and category permissions. They allow you to restrict access based on specific "match-keys", which are unique identifiers for different actions or content within Composr. For instance, you could use match-key permissions to prevent guests from submitting banners or to restrict access to the member directory for all but specific usergroups. You can also specify custom access denied errors for each match-key.
A "match-key" is typically a page-link, such as cms:cms_banners:add.
How can I control who can view specific pages or categories?
Answer
You can manage access control for zones, pages, and categories primarily through the Permissions Tree Editor (Admin Zone > Security > Permissions Tree Editor). This tool provides a central location to set view permissions for different usergroups. You can also edit individual zone and category permissions through their respective editing interfaces, but the Permissions Tree Editor offers a more streamlined and efficient approach.
What is the difference between access permissions and privileges in Composr?
Answer
Access permissions control whether members of a certain usergroup can view specific areas of your site, such as zones, pages, and categories. A member only needs one of their usergroups to have access permission to view the content. But permissions work on a deny-first policy; if one of the permissions applicable to viewing something is denied for a usergroup, then the whole thing is denied for that usergroup (e.g. even if a download itself grants access, access will be denied if its category denies access).
Privileges, on the other hand, dictate what actions a usergroup is allowed to perform across the website, like using advanced Comcode or bypassing the word filter.
How can I change the news archive display to show summaries instead of just headlines?
Answer
By default, the news archive screen shows only headlines. To display summaries like the news block, add :inline=1 to the page-link. For example, if your news archive page-link is site:news, modify it to site:news:inline=1. This will show summaries instead of just the headlines in the archive view.
What are Trackbacks and how do they work in Composr?
Answer
Trackbacks are a blogging feature that creates a link from an article on one blog to an article on another, acting as a citation mechanism.
How Trackbacks Work:
The original article includes a "trackback" link in its HTML.
When another blogger writes an article referencing the original, their software uses the trackback link to inform the original site.
Composr receives the trackback and displays a list of articles linking back to the original.
To enable trackbacks, go to Admin Zone > Setup > Configuration > Feature options and check the "Trackbacks" option. You can then enable trackbacks for individual content items.
How can I filter the news archive to show specific content?
Answer
The news system allows advanced filtering:
Blog vs. Non-Blog Posts: Choose to display blog posts only, regular news posts only, or both.
Category Filtering: Limit results to specific news categories.
Double Filtering: Apply a second category filter for a two-level categorization system (useful for large sites).
These filters are controlled through parameters passed to the news blocks and carried through navigation links. When viewing a news post, you can also filter by the categories associated with that post.
How do I display external RSS feeds on my Composr website?
Answer
Composr offers two blocks for displaying RSS and Atom feeds in a news-like format:
main_rss block: Suitable for main content areas
side_rss block: Designed for sidebars and smaller spaces
To add a block, use the Block Construction Assistant or insert the following Comcode into your page:
[block="http://example.com/feed.xml"]main_rss[/block][block="http://example.com/feed.xml"]side_rss[/block] Replace "http://example.com/feed.xml" with the actual feed URL.
Important: Exercise caution when using external feeds. Ensure the source is trustworthy, as malicious feeds can contain harmful code.
What are RSS/Atom feeds and how do they benefit my website?
Answer
Feeds, in formats like RSS and Atom, are XML files that syndicate your website content, making it accessible beyond your website. They can be viewed using feed reader applications (e.g., Feedly, Vienna) or integrated into other websites or web browsers.
Composr supports both RSS and Atom for syndicating news and other content. While RSS is more common, Atom is a cleaner, standardized format. Both effectively share your content updates.
Benefits:
Wider audience reach: Your content becomes accessible to those using feed readers and aggregators.
Content repurposing: Other websites can incorporate your feed, increasing visibility.
Increased traffic: Users discovering your content in feeds may visit your website directly.
Staying on top: Those who use your RSS feeds will see when you post new news articles.
What are Personal Categories/Blogs in Composr? How do I create one?
Answer
Composr allows members of permitted usergroups to have their own personal news categories, also known as "blogs". These blogs appear as a tab on the member's profile (Conversr-only) and may also appear in the main news block depending on your configuration.
To create a blog, a member simply adds a news post and selects their personal category. If the category doesn't exist, it will be automatically created upon submission.
A dedicated "Blogs" CMS module (Admin Zone > Content > Blogs) is available if the "Separate blogs" configuration option is enabled. This simplified module focuses on blog posting and can be used to restrict members from submitting to general website news.