HTML Helper Remake...

Written something you are proud of, post it here.
Post Reply
conradk
Posts: 117
Joined: Tue Jul 05, 2011 10:41 pm

HTML Helper Remake...

Post by conradk »

Hello people,

Has anyone tried this out ? The HtmlHelper class by the guy who sold most on CodeCanyon.
http://codecanyon.net/item/html-helper-class/161718

Here is the list of features:
label, textfield, textarea, checkbox, radiobutton, select, ul, ol, img, a, style, script, swf (embed youtube, vimeo and other flash content)

Anyways, I believe this item is a little bit overpriced ($4) for what it is, so I'm building my own HTML Preprocess Class.

I haven't figured out every features I'm going to add. However, I might release it on this forum for free (for 24 hours more or less) before trying to get it on CodeCanyon (not sure about CodeCanyon, but we'll see: I don't like to make people pay ^^) :) Kind of a pay back even though you guys could probably do such a class rather quickly :P I'm slow, so consider this as being the most awesome gift EVAAA :lol:

Quick preview of what the head would look like with this class (can't show the rest as I'm not that far yet xD):
[syntax=php]<?php
include_once 'lib/htmlpp.class.php';
$htmlpp = new htmlpp();

/* Changing the head settings */
$htmlpp->version('5'); // Sets the page to be HTML 5 (default: xhtml 1.1)
$htmlpp->lang('fr'); // Sets the page language to French (default: en)

/* Meta tags */
$htmlpp->add_meta_tag('keywords', 'ConradK, Webdesign, PHP tutorials');
$htmlpp->add_meta_tag('description', 'ConradK is an 18 year old programmer');

/* Stylesheets */
$htmlpp->add_css('styles.css','print',TRUE); // 2nd and 3rd params optional default: media="all" and inline = FALSE

echo $htmlpp->head();
echo $htmlpp->meta_tags();
echo $htmlpp->stylesheets();
?>
</head>
<body>

</body>
</html>[/syntax]

Any suggestions would be appreciated. This is a simple class, but writing meta tags or remembering the W3C DTDs is the most annoying thing IMO... so I thought I'd build a little tool to make everything easier.

Best regards,
CK
Last edited by conradk on Thu Jul 07, 2011 9:52 am, edited 1 time in total.
bowersbros
Posts: 534
Joined: Thu May 05, 2011 8:19 pm

Re: HTML Helper Remake...

Post by bowersbros »

I'd suggest maybe having stuff like forms in a seperate class (makes more sense to do; new form();) and such.. Also, in __construct you might want to initialise everything that ever file has..

Doctype, html head body etc tags?
I don't like to brag, but I wasn't circumcised. I was circumnavigated. ;)

Want to learn something new? Or maybe reinforce what you already know? Or just help out? Please subscribe to my videos: http://goo.gl/58pN9
User avatar
Dylan
Posts: 150
Joined: Fri May 06, 2011 7:14 pm

Re: HTML Helper Remake...

Post by Dylan »

I'm in agreeance with Bowers;
Separation of the class will benefit both you in terms of organization and structure, and your users in that they can approach it in a logical manner.

I do believe this is a very worthwhile class that will save buckets of time in the end of things :)
conradk
Posts: 117
Joined: Tue Jul 05, 2011 10:41 pm

Re: HTML Helper Remake...

Post by conradk »

Somewhat of a more final version:

[syntax=php]/* HtmlHelper class
*
* @created : 8.7.2011
* @function : simplify the writing process of HTML
*/
class HtmlHelper {

/* New tag
*
* @created : 8.7.2011
* @function : open a new tag (not self closing), add classes and an ID
*/
public static function newTag($type = 'div', $classes = NULL, $id = NULL) {
$return = '<' . $type;
if(is_string($id))
$return .= ' id="' . $id . '"';
if(is_string($classes))
$return .= ' class="' . $classes . '"';
$return .= '>';
return $return;
}
/* Close tag
*
* @created : 8.7.2011
* @function : close any non self closing tag, add structure to the HTML page by adding information about which tag is being closed
*
* $info : the id or class of the tag that is closed, for example '.myCustomClass' or '#myCustomId'
*/
public static function closeTag($type = 'div', $info = NULL) {
$return = '</' . $type;
if(is_string($info))
$return .= '<!-- /' . $info . ' -->';
$return .='>';
return $return;
}
/* Meta tag
*
* @created : 8.7.2011
* @function : add any meta tags that have a name and a content attribute
*/
public static function metaTag($name, $content) {
$return = '<meta name="' . $name . '" content="' . $content . '" />';
return $return;
}
/* Title of the HTML page
*
* @created : 8.7.2011
*/
public static function title($title) {
$return = '<title>' . $title . '</title>';
return $return;
}
/* Favicon
*
* @created : 8.7.2011
* @function : add a favicon to the page
* @filetype: PNG
*/
public static function favIcon($filePath) {
$return = '<link rel="shortcut icon" type="image/png" href="' . $filePath . '" />';
return $return;
}
/* CSS
*
* @created : 8.7.2011
* @function : add a new Cascading StyleSheet to the current page, and set the media it should apply to
* @filetype : CSS
*/
public static function css($filePath, $media = 'all') {
$return = '<link rel="stylesheet" type="text/css" href="' . $filePath . '" media="' . $media . '" />';
return $return;
}
/* JS
* @created : 8.7.2011
* @function : add a new Javascript file to the current page, and choose whether it should defer or not
* @filetype : JS
*/
public static function js($filePath, $defer = FALSE) {
$return = '<script type="text/javascript" src="' . $filePath . '"';
if($defer === TRUE)
$return .= ' defer="defer"';
$return .= '></script>';
return $return;
}
}[/syntax]
User avatar
jacek
Site Admin
Posts: 3262
Joined: Thu May 05, 2011 1:45 pm
Location: UK
Contact:

Re: HTML Helper Remake...

Post by jacek »

line 18 classes should be class. Otherwise, nice :)

I will add some of the things you submitted to the library when I get around to it.
Image
conradk
Posts: 117
Joined: Tue Jul 05, 2011 10:41 pm

Re: HTML Helper Remake...

Post by conradk »

Oh yeah, sorry about that :/
Post Reply