<p>If you set the title format to a string like "Note" in the channel's field layout, all your entries will be given this exact name. The entry slug will be saved prefixed: "note-1", "note-2", etc.</p>

<p>If you don't want them all to be named the same, you could add a date to it:</p>

<pre><code>Note {{ 'now'|date('Y-m-d') }}
</code></pre>

<p>This approach has one problem, if you make an edit to the "Notes" entry at a later point, the title will get updated to a new <code>'now'</code> date. To work against that you can add a conditional to the code, checking if a title is already saved for that entry:</p>

<pre><code>{{ object.title ? object.title : 'Note ' ~ 'now'|date('Y-m-d') }}
</code></pre>

<p>In the case you add more than one "Note" a day the entries would still be named the same though. To solve that, you could format <code>'now'</code> to add a time to the title <code>|date('Y-m-d H:i')</code>, or you could use a counter instead. Because entry IDs are saved across all sections you wouldn't want to use them here.</p>

<p>But what you could do is to use the entry title of the previous entry in your "Notes" section (sorted by title) and modify upon that. Just name your first entry in your section "Note 001" and then use this snippet as the title format:</p>

<pre><code>{{ object.title ? object.title : 'Note %03d'|format(craft.entries.type('note').order('title').last().title|slice(5) + 1) }}
</code></pre>

CC BY-SA 3.0
2014-08-18T18:26:33.567Z
This appears to be a great answer but I can't seem to get it to work. My notes entry type is 3, so I've tried: ```Note ({{ now|date('Y-m-d') }} - {{ craft.entries.type(3).order(id).last().id + 1 }})``` but think I'm going wrong somewhere?
Shane Hudson
CC BY-SA 3.0
2014-08-18T18:39:24.043Z
@shane see my edit. What doesn't work for you? Is nothing added to the "Note" string or what happens? And why are you using entry types for it? Is this notes mixed with other (blog) entries or are you trying to get by with a personal license?
carlcs
CC BY-SA 3.0
2014-08-18T18:40:48.053Z
It does not all me to save when I try to write the note. Yes it is mixed with other entries as Brandon said I would be fine with just the personal license.
Shane Hudson
CC BY-SA 3.0
2014-08-18T18:54:49.770Z
@shane there was a typo in my syntax.
carlcs
CC BY-SA 3.0
2014-08-18T18:56:27.007Z
`Note ({{ 'now'|date('Y-m-d') }} - {{ craft.entries.type('3').order('id').last().id + 1 }})`should work. but it still isn't tested that well and even my last edit has the same problems as using `'now'` has when you make edits to the entry :( damn...
carlcs
CC BY-SA 3.0
2014-08-18T19:04:19.660Z
Hmm that is still giving "can't save entry". It is definitely the kind of thing I'm looking for though!
Shane Hudson
CC BY-SA 3.0
2014-08-18T19:04:51.820Z
Let us [continue this discussion in chat](http://chat.stackexchange.com/rooms/16518/discussion-between-carlcs-and-shane-hudson).
carlcs
CC BY-SA 3.0
2014-08-30T03:11:45.090Z
Just to confirm this was a bug in the Quick Post widget that will be fixed in the next release.
Brad Bell
CC BY-SA 3.0
2014-08-18T17:23:22.710Z
2014-08-25T16:37:58.013Z
2014-08-25T16:37:58.013Z
carlcs
<p>So odd, I actually <em>just</em> arrived at this. It was from using the Guest Entries plugin and I wanted a front end form that created a derived title.</p>

<p>My solution was to create a hidden input with the title value as dummy content.</p>

<pre><code>&lt;input type="hidden" name="title" value="placer" /&gt;
</code></pre>

<p>When the Entry Service ran, it saved the entry with the correct derived title</p>

CC BY-SA 3.0
2014-08-19T22:18:39.583Z
I have tried this by manually adding the input field to the DOM. It does work, which would indicate a bug with the quick post widget.
Shane Hudson
CC BY-SA 3.0
2014-08-20T00:51:50.433Z
Actually I was wrong, it seems in this case it does not cause the post to auto generate the title, it just uses 'placer' as the title.
Shane Hudson
CC BY-SA 3.0
2014-08-20T01:00:28.980Z
And you have generate title selected for the section? Odd, it works for me with front end forms.
Peter Tell
CC BY-SA 3.0
2014-08-22T07:08:05.280Z
Peter, what do you mean with "correct derived title"? What does it look like?
carlcs
CC BY-SA 3.0
2014-08-22T12:48:27.603Z
So, I've set up my Entry Type with `Show Title Fields` unchecked and I've input the following in Title Format: `{text1} [{dateCreated|date("M d, Y")}]`. Then on my front end form I didn't have a `title` field because it was derived. However, Craft's validation was kicking in causing the form not to submit. The solution was to put a placer title field. Instead of using the value of that when the form was submitted, Craft correctly used my derived title as described above.
Peter Tell
CC BY-SA 3.0
2014-08-18T17:36:32.767Z
2014-08-18T17:36:32.767Z
Peter Tell
<p>I've got a Quick Post widget for notes (tweet-like posts). Is there any way to make the titles optional? I've tried adding the id as an auto-generated title but it doesn't appear to work?</p>

<p>Update:
It actually appears that the auto-generated title is now working (thanks to carlcs) but it only works through the entries menu item rather than the quick post widget despite the widget's type being correct.</p>

<auto-generate>
Is It Possible To Make Titles Optional?
# Is It Possible To Make Titles Optional?

(Asked by: username_0 on 2014-08-18)

I've got a Quick Post widget for notes (tweet-like posts). Is there any way to make the titles optional? I've tried adding the id as an auto-generated title but it doesn't appear to work?

Update:
It actually appears that the auto-generated title is now working (thanks to carlcs) but it only works through the entries menu item rather than the quick post widget despite the widget's type being correct.

**Tags:** auto-generate

---

## 2 answers

### Answer by username_1 on 2014-08-18. Score: 4 | Accepted answer

If you set the title format to a string like "Note" in the channel's field layout, all your entries will be given this exact name. The entry slug will be saved prefixed: "note-1", "note-2", etc.
If you don't want them all to be named the same, you could add a date to it:
Note {{ 'now'|date('Y-m-d') }}

This approach has one problem, if you make an edit to the "Notes" entry at a later point, the title will get updated to a new 'now' date. To work against that you can add a conditional to the code, checking if a title is already saved for that entry:
{{ object.title ? object.title : 'Note ' ~ 'now'|date('Y-m-d') }}

In the case you add more than one "Note" a day the entries would still be named the same though. To solve that, you could format 'now' to add a time to the title |date('Y-m-d H:i'), or you could use a counter instead. Because entry IDs are saved across all sections you wouldn't want to use them here.
But what you could do is to use the entry title of the previous entry in your "Notes" section (sorted by title) and modify upon that. Just name your first entry in your section "Note 001" and then use this snippet as the title format:
{{ object.title ? object.title : 'Note %03d'|format(craft.entries.type('note').order('title').last().title|slice(5) + 1) }}

> **Comments:**
> **username_0**: This appears to be a great answer but I can't seem to get it to work. My notes entry type is 3, so I've tried: ```Note ({{ now|date('Y-m-d') }} - {{ craft.entries.type(3).order(id).last().id + 1 }})``` but think I'm going wrong somewhere?  
> **username_1**: @shane see my edit. What doesn't work for you? Is nothing added to the "Note" string or what happens? And why are you using entry types for it? Is this notes mixed with other (blog) entries or are you trying to get by with a personal license?  
> **username_0**: It does not all me to save when I try to write the note. Yes it is mixed with other entries as Brandon said I would be fine with just the personal license.  
> **username_1**: @shane there was a typo in my syntax.  
> **username_1**: `Note ({{ 'now'|date('Y-m-d') }} - {{ craft.entries.type('3').order('id').last().id + 1 }})`should work. but it still isn't tested that well and even my last edit has the same problems as using `'now'` has when you make edits to the entry :( damn...  
> **username_0**: Hmm that is still giving "can't save entry". It is definitely the kind of thing I'm looking for though!  
> **username_1**: Let us [continue this discussion in chat](http://chat.stackexchange.com/rooms/16518/discussion-between-carlcs-and-shane-hudson).  
> **username_2**: Just to confirm this was a bug in the Quick Post widget that will be fixed in the next release.  

---

### Answer by username_3 on 2014-08-18. Score: 3

So odd, I actually just arrived at this. It was from using the Guest Entries plugin and I wanted a front end form that created a derived title.
My solution was to create a hidden input with the title value as dummy content.


When the Entry Service ran, it saved the entry with the correct derived title

> **Comments:**
> **username_0**: I have tried this by manually adding the input field to the DOM. It does work, which would indicate a bug with the quick post widget.  
> **username_0**: Actually I was wrong, it seems in this case it does not cause the post to auto generate the title, it just uses 'placer' as the title.  
> **username_3**: And you have generate title selected for the section? Odd, it works for me with front end forms.  
> **username_1**: Peter, what do you mean with "correct derived title"? What does it look like?  
> **username_3**: So, I've set up my Entry Type with `Show Title Fields` unchecked and I've input the following in Title Format: `{text1} [{dateCreated|date("M d, Y")}]`. Then on my front end form I didn't have a `title` field because it was derived. However, Craft's validation was kicking in causing the form not to submit. The solution was to put a placer title field. Instead of using the value of that when the form was submitted, Craft correctly used my derived title as described above.  

---

